![]() |
OnClick trotz Enabled=False?
Hi
wie der Titel schon sagt, ich möchte das bei 4 labeledEdits das OnClick auch ausgeführt wird wenn diese auf enabled=false stehen. das is nur leider nicht so :( ich möcht den effekt erzielen, das man 4 verschiedene sachen eingeben kann, aber jeweils nur eins. hmm, blöder satz. beispiel: eins für inch, eins für cm, eins für km und eins für seemeilen. nun soll in eins was eingetragen werden. im onclick von inch zb werden die anderen deaktiviert und im onchange der errechnete wert eingetragen. wenn sich aber nun mein dau überlegt "nehm ich doch lieber km" dann soll er auf km klicken können, und inch wird deaktiviert, km aktiviert. hat das jetzt irgendwer verstanden? wenn ja: geht das irgendwie? es ginge wenn er disabled is trotzdem das onclick ausführt, aber das tut der offensichtlich net. oder kann ich dieses graue und das man nichts eingeben kann anders als mit enabled=false kriegen? mfg gereon |
Re: OnClick trotz Enabled=False?
Wieso nimmst du keine ComboBox? :gruebel:
Da kann man dann einefach auswählen. MfG freak |
Re: OnClick trotz Enabled=False?
hmm, ma überlegen...
|
Re: OnClick trotz Enabled=False?
Klingt nach dem klassischen Anwendungsfall für RadioButton/RadioGroup.
Gruß, teebee |
Re: OnClick trotz Enabled=False?
Du brauchst die Edits doch gar nicht deaktivieren ...
Mach die Rechnungen im OnChange der 4 Edits, dann steht immer in jedem der richtige Wert drin ... |
Re: OnClick trotz Enabled=False?
Sag dann mal bitte bescheid, wofür du dich entschieden hast. ;)
MfG freak |
Re: OnClick trotz Enabled=False?
Liste der Anhänge anzeigen (Anzahl: 1)
Man könnte auch ein PageControl mit Style = tsButtons oder tsFlatButtons nehmen, sieht auch nicht schlecht aus.
|
Re: OnClick trotz Enabled=False?
Man kann glaub ich, wenn sie nicht enabled sind kein OnClick Ereignis auslösen
|
Re: OnClick trotz Enabled=False?
also, ich hab mir jetzt selber was gebastelt.
ich hab praktisch das "enabled=false" imitiert. hier der Code: OnClick
Delphi-Quellcode:
OnChange
procedure TForm_Main.Wertung_Click(Sender: TObject);
begin //Alle Deaktivieren Edt_DWZ_Spieler.ReadOnly:=True; Edt_Ingo_Spieler.ReadOnly:=True; Edt_Elo_Spieler.ReadOnly:=True; Edt_BCF_Spieler.ReadOnly:=True; Edt_DWZ_Spieler.Color:=clBtnFace; Edt_Ingo_Spieler.Color:=clBtnFace; Edt_Elo_Spieler.Color:=clBtnFace; Edt_BCF_Spieler.Color:=clBtnFace; //Angelklicktes Aktivieren TLabeledEdit(Sender).ReadOnly:=False; TLabeledEdit(Sender).Color:=clWindow; end;
Delphi-Quellcode:
hat wer ideen zur kürzung, sicherung oder vereinfachung?
procedure TForm_Main.Wertung_Change(Sender: TObject);
begin //Erneuten OnChange-Aufruf umgehen Edt_DWZ_Spieler.OnChange:=nil; Edt_Elo_Spieler.OnChange:=nil; Edt_Ingo_Spieler.OnChange:=nil; Edt_BCF_Spieler.OnChange:=nil; try if Sender=Edt_DWZ_Spieler then //Wenn Sender Edt_DWZ begin //Umrechnen und in andere Edits eintragen Edt_Ingo_Spieler.Text:=IntToStr(Umrechnen.DwzToIngo(StrToInt(Edt_DWZ_Spieler.Text))); Edt_Elo_Spieler.Text:=IntToStr(Umrechnen.DwzToElo(StrToInt(Edt_DWZ_Spieler.Text))); Edt_BCF_Spieler.Text:=IntToStr(Umrechnen.DwzToBcf(StrToInt(Edt_DWZ_Spieler.Text))); end else if Sender=Edt_Ingo_Spieler then //Wenn Sender Edt_Ingo begin //Umrechnen und in andere Edits eintragen Edt_DWZ_Spieler.Text:=IntToStr(Umrechnen.IngoToDwz(StrToInt(Edt_Ingo_Spieler.Text))); Edt_Elo_Spieler.Text:=IntToStr(Umrechnen.IngoToElo(StrToInt(Edt_Ingo_Spieler.Text))); Edt_BCF_Spieler.Text:=IntToStr(Umrechnen.IngoToBcf(StrToInt(Edt_Ingo_Spieler.Text))); end else if Sender=Edt_Elo_Spieler then //Wenn Sender Edt_Elo begin //Umrechnen und in andere Edits eintragen Edt_DWZ_Spieler.Text:=IntToStr(Umrechnen.EloToDwz(StrToInt(Edt_Elo_Spieler.Text))); Edt_Ingo_Spieler.Text:=IntToStr(Umrechnen.EloToIngo(StrToInt(Edt_Elo_Spieler.Text))); Edt_BCF_Spieler.Text:=IntToStr(Umrechnen.EloToBcf(StrToInt(Edt_Elo_Spieler.Text))); end else if Sender=Edt_BCF_Spieler then //Wenn Sender Edt_BCF begin //Umrechnen und in andere Edits eintragen Edt_DWZ_Spieler.Text:=IntToStr(Umrechnen.BcfToDwz(StrToInt(Edt_BCF_Spieler.Text))); Edt_Elo_Spieler.Text:=IntToStr(Umrechnen.BcfToElo(StrToInt(Edt_BCF_Spieler.Text))); Edt_Ingo_Spieler.Text:=IntToStr(Umrechnen.BcfToIngo(StrToInt(Edt_BCF_Spieler.Text))); end; except //Falls Fehler (kein Integer im Edit) TLabeledEdit(Sender).Clear; //Leeren end; //"Echte" Onchanges zurück Edt_DWZ_Spieler.OnChange:=Wertung_Change; Edt_Elo_Spieler.OnChange:=Wertung_Change; Edt_Ingo_Spieler.OnChange:=Wertung_Change; Edt_BCF_Spieler.OnChange:=Wertung_Change; end; jederzeit gerne... |
Re: OnClick trotz Enabled=False?
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz