Kezdőoldal » Számítástechnika » Programozás » Hogyan tudom megváltoztani a...

Darika185 kérdése:

Hogyan tudom megváltoztani a checkbox értékét ha le telik x idő?

Figyelt kérdés

a kódom:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

using System.IO;

using System.Configuration;



namespace csomagolas_aktivalas

{

public partial class utasitas : Form

{


public utasitas()

{

InitializeComponent();

}


public void Form1_Load(object sender, EventArgs e)

{

this.BackColor = Color.Blue;

this.TransparencyKey = Color.Blue;

timer1.Start();

}


public void label1_Click(object sender, EventArgs e)

{


}


public void checkBox2_CheckedChanged(object sender, EventArgs e)

{

if (checkBox2.Checked == true)

{

label5.Visible = true;

}

if (checkBox2.Checked == false)

{

label5.Visible = false;

}

if (checkBox2.Checked == true)

{

label6.Visible = true;

}

if (checkBox2.Checked == false)

{

label6.Visible = false;

}

}


public void checkBox1_CheckedChanged(object sender, EventArgs e)

{

if (checkBox1.Checked == true)

{

this.Hide();

belepes ss = new belepes(this);

ss.Show();

}

if (checkBox1.Checked == true)

{

textBox1.Enabled = true;

}

if (checkBox1.Checked == true)

{

textBox2.Enabled = true;

}

if (checkBox1.Checked == true)

{

textBox3.Enabled = true;

}

if (checkBox1.Checked == false)

{

textBox1.Enabled = false;

}

if (checkBox1.Checked == false)

{

textBox2.Enabled = false;

}

if (checkBox1.Checked == false)

{

textBox3.Enabled = false;

}

}


private void textBox1_TextChanged(object sender, EventArgs e)

{


}


private void timer1_Tick(object sender, EventArgs e)

{

int i = 0;

i++;

if (i == 10)

{

checkBox1.Checked = false;

}

timer1.Stop();

}

}

}



úgy épül fel ha a checkbox egy true akkor fel dob egy form2-t amin be kell jelentkezni ekkor aktív marad a checkbox. azt szeretném, hogy ha megtörtént a belépés a checkbox x idő elteltével legyen false.

ezzel a kóddal jelenleg a beállított idő után vissza tér a form2-re.

mi a hiba?



2019. okt. 25. 22:16
 1/3 anonim ***** válasza:
1. Minek van ott az a sok if szerkezet a checkBox1_CheckedChanged metódusban??? Ilyenért börtön kéne hogy járjon...
2019. okt. 25. 22:49
Hasznos számodra ez a válasz?
 2/3 anonim ***** válasza:

Nem teljesen értem, hogy mit szeretnél.

DE a timer1_Tick metódusod minden lefutáskor létrehoz egy i változót 0 értékkel, majd növeli 1-el. A feltétel sose lesz igaz, ezért nem is állítódik a checkBox1 false-ra.


A kódban látott logikai hibák láttán valószínűsítem a 'form2'(gondolom a 'belepes')-ben is van néhány hiba.


Két metódus átláthatóbban:



public void checkBox2_CheckedChanged(object sender, EventArgs e)

{

if (checkBox2.Checked == true)

{

label5.Visible =

label6.Visible = true;

}

else

{

label5.Visible =

label6.Visible = false;

}

}


public void checkBox1_CheckedChanged(object sender, EventArgs e)

{

if (checkBox1.Checked == true)

{

this.Hide();


belepes ss = new belepes(this);


ss.Show();


textBox1.Enabled =

textBox2.Enabled =

textBox3.Enabled = true;

}

else

{

textBox1.Enabled =

textBox2.Enabled =

textBox3.Enabled = false;

}

}


A másik dolog, hogy ebben a kódban vizsgálni kell, hogy 'megtörtént-e a belépés'. Ehhez kell a 'belepes' kódnak visszaadnia egy értéket, amit majd lehet vizsgálni.

Pl.: Csinálsz egy osztályszintű változót ebbe a kódba:

public static bool belepettE = false;

A belepes-nél, ha bejelentkezett arra Visible false vagy bármi, de előtte belepettE = true;


Illetve addig kell futnia a timer-nek, amíg a feltétel nem teljesül.


private void timer1_Tick(object sender, EventArgs e)

{

if (belepettE)

{

checkBox1.Checked = false;

timer1.Stop();

}

}


Bár kíváncsi lennék mi a program célja. :D

2019. okt. 25. 22:54
Hasznos számodra ez a válasz?
 3/3 anonim ***** válasza:
Pihenjél nyomi.
2019. okt. 26. 10:48
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!