Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Autor | Správa |
---|
Registrovaný: 01.05.14 Prihlásený: 07.11.19 Príspevky: 152 Témy: 52 | 52 Bydlisko: Dubovce |
Zdravím, Mám problém s CheckBoxom vo WinForms. Problém je v tom že po zapnutí programu má CheckBox nastavenú hodnotu na true ale podmienka ktorú mám nastavenú na true nefunguje. Ako som nad tým rozmýšľal tak som prišiel na to že bude problém v metóde(?) pretože metóda sa volá private void checkDatum_CheckedChanged(object sender, EventArgs e) podla angličtiny som pochopil že sa všetky príkazy vykonajú až sa klikne na CheckBox. Preto by som sa chcel opýtať ako to zmeniť. Kód: Kód: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;
namespace pocitadlo { public partial class Form1 : Form { int day; int month; int year; int aday; int amonth; int ayear; int v; int age; byte[] months = new byte[13] { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
public Form1() { InitializeComponent(); }
private void checkDatum_CheckedChanged(object sender, EventArgs e) { if (checkDatum.Checked == false) { txtADay.Visible = true; txtAMonth.Visible = true; txtAYear.Visible = true; labelDatum.Visible = true; aday = int.Parse(txtADay.Text); amonth = int.Parse(txtAMonth.Text); ayear = int.Parse(txtAYear.Text); btnSend.Location = new Point(265, 104); } if (checkDatum.Checked == true) { txtADay.Visible = false; txtAMonth.Visible = false; txtAYear.Visible = false; labelDatum.Visible = false; aday = DateTime.Now.Day; amonth = DateTime.Now.Month; ayear = DateTime.Now.Year; btnSend.Location = new Point(162, 104); } }
private void btnSend_Click(object sender, EventArgs e) { int s1 = 0; int s2 = 0; v = 0; age = 0; day = int.Parse(txtDay.Text); month = int.Parse(txtMonth.Text); year = int.Parse(txtYear.Text); if (year % 4 == 0 && ayear % 4 == 0) months[2] = 29; else months[2] = 28; for (int i = 1; i <= month; i++) s1 += months[i]; for (int i = 1; i <= amonth; i++) s2 += months[i]; v = (s1 + day) - (s2 + aday); if (day == aday && month == amonth) { age = ayear - year; if (year % 4 == 0 && ayear % 4 == 0) v = v + 366; else v = v + 365; } else age = (ayear - year) - 1; if (v < 0) { age++; if (year % 4 == 0 && ayear % 4 == 0) v = v + 366; else v = v + 365; } Output1.Text = "Máš "+ age +" rokov"; Output2.Text = "Za "+ v + " dní budeš mať narodeniny"; } } }
|
|
Registrovaný: 27.06.09 Prihlásený: 04.03.23 Príspevky: 332 Témy: 3 | 3 Bydlisko: Košice - ok... |
a kedy to chceš vykonať?
_________________ GitHub: mfocko | mfocko.xyz OSs: archLinux + fedora (+ Windows 10 Pro Insider Preview, only if needed) Server: archLinux [nginx + Docker (GitLab) + SSH/SFTP + local mirror (FTP/rsync - archLinux, Fedora) + samba + transmission] |
|
Registrovaný: 01.05.14 Prihlásený: 07.11.19 Príspevky: 152 Témy: 52 | 52 Bydlisko: Dubovce |
No chcel by som aby to bolo nastavené defaultne na true
|
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14572 Témy: 66 | 66 Bydlisko: Žilina |
Funkcia checkDatum_CheckedChanged sa vykoná, ak je priradená k eventu, po zmene stavu checkboxu. Ak chceš vykonať nejakú logiku po spustení programu, musíš zadať kód inde, napríklad do konštruktora.
_________________ C#, PHP, ... |
|
Registrovaný: 27.06.09 Prihlásený: 04.03.23 Príspevky: 332 Témy: 3 | 3 Bydlisko: Košice - ok... |
alebo Form.Load
_________________ GitHub: mfocko | mfocko.xyz OSs: archLinux + fedora (+ Windows 10 Pro Insider Preview, only if needed) Server: archLinux [nginx + Docker (GitLab) + SSH/SFTP + local mirror (FTP/rsync - archLinux, Fedora) + samba + transmission] |
|
Registrovaný: 01.05.14 Prihlásený: 07.11.19 Príspevky: 152 Témy: 52 | 52 Bydlisko: Dubovce |
Teraz ste mňa zmiatli. Takže já musím vložiť celú metódu vyššie do konštruktora alebo do Form.Load alebo iba tie podmienky? Alebo som to celé zle pochopil ? // Spojený príspevok Uto 28.02.17 20:10Vyriešil som to svojky (amatérsky) Kód: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;
namespace pocitadlo { public partial class Form1 : Form { int day; int month; int year; int aday; int amonth; int ayear; byte[] months = new byte[13] { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
public Form1() { InitializeComponent(); }
private void checkDatum_CheckedChanged(object sender, EventArgs e) { if (checkDatum.Checked == false) { txtADay.Visible = true; txtAMonth.Visible = true; txtAYear.Visible = true; labelDatum.Visible = true; btnSend.Location = new Point(265, 104); } else { txtADay.Visible = false; txtAMonth.Visible = false; txtAYear.Visible = false; labelDatum.Visible = false; btnSend.Location = new Point(162, 104); } }
private void btnSend_Click(object sender, EventArgs e) { int s1 = 0; int s2 = 0; int v = 0; int age = 0; if (checkDatum.Checked == true) { aday = DateTime.Now.Day; amonth = DateTime.Now.Month; ayear = DateTime.Now.Year; } else { aday = int.Parse(txtADay.Text); amonth = int.Parse(txtAMonth.Text); ayear = int.Parse(txtAYear.Text); } day = int.Parse(txtDay.Text); month = int.Parse(txtMonth.Text); year = int.Parse(txtYear.Text); if (year % 4 == 0 && ayear % 4 == 0) months[2] = 29; else months[2] = 28; for (int i = 1; i <= month; i++) s1 += months[i]; for (int i = 1; i <= amonth; i++) s2 += months[i]; v = (s1 + day) - (s2 + aday); if (day == aday && month == amonth) { age = ayear - year; if (year % 4 == 0 && ayear % 4 == 0) v = v + 366; else v = v + 365; } else age = (ayear - year) - 1; if (v < 0) { age++; if (year % 4 == 0 && ayear % 4 == 0) v = v + 366; else v = v + 365; } Output1.Text = "Máš "+ age +" rokov"; Output2.Text = "Za "+ v + " dní budeš mať narodeniny"; } } }
|
|
Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v PHP, ASP | 5 | 570 | 19.02.2010 9:01 arno | | v PHP, ASP | 2 | 558 | 05.07.2009 13:09 Snacker | | v PHP, ASP | 3 | 602 | 22.04.2009 14:53 drozdo | | v Ostatné programy | 2 | 582 | 03.07.2015 11:57 majetan212 | | v JavaScript, VBScript, Ajax | 6 | 551 | 11.10.2011 22:03 chrono | | v PHP, ASP | 1 | 541 | 21.07.2009 12:15 Ďuri | | v PHP, ASP | 1 | 429 | 17.09.2011 21:46 chrono | | v PHP, ASP | 9 | 436 | 07.10.2013 8:42 Elrohir | | v PHP, ASP | 8 | 1328 | 19.11.2010 1:28 venom2 | | v PHP, ASP | 13 | 675 | 09.05.2009 16:43 kaidžas | | v PHP, ASP | 3 | 488 | 31.01.2008 14:36 stenley | | v PHP, ASP | 16 | 481 | 07.11.2014 13:02 stenley | | v PHP, ASP | 2 | 423 | 24.04.2010 18:57 jtomcik | | v PHP, ASP | 10 | 652 | 19.05.2011 11:43 jtomcik | | v JavaScript, VBScript, Ajax | 1 | 450 | 08.10.2010 14:51 Ďuri |
|