Autor |
Beitrag |
neocox
      
Beiträge: 44
|
Verfasst: Mo 04.05.09 12:48
joah, ich habe versucht, die buttonfarbe durch onclick verändern zu lassen. das sieht so aus:
Delphi-Quelltext 1: 2: 3: 4:
| procedure TForm11.Button1Click(Sender: TObject); begin button1.Font.Color := clred; end; |
es läuft durch ohne fehlermeldung, jedoch wird die schriftfarbe des buttons net rot. warum nicht ? gibts dafür ne andere option ?
oder wo gibt s die "on button click" option ?
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mo 04.05.09 12:54
Moin!
neocox hat folgendes geschrieben : | ich habe versucht, die buttonfarbe durch onclick verändern zu lassen. |
Der TButton kann das scheinbar nicht  obwohl es die Eigenschaft gibt
Hab´s grad probiert: ein TBitButton kann´s.  Dafür sollte der Code auch OK sein.
neocox hat folgendes geschrieben : | oder wo gibt s die "on button click" option ? |
Ähm, wie meinen?  Vorsorglich: neue Frage  neuer Thread!
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Mo 04.05.09 12:58
neee, ich dachte nur, dass es vllt nicht bei OnKlick funzt, sonder bei OnButtonKlick... aber OnButtonKlick gibts wohl nicht
also ich teste mal tbitbutton
möööp, geht net, der wird nicht rot der text :/
Zuletzt bearbeitet von neocox am Mo 04.05.09 13:05, insgesamt 1-mal bearbeitet
|
|
Dude566
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Mo 04.05.09 13:04
Ich denke er will erst beim Klicken auf den Button die Schriftfarbe ändern.
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Mo 04.05.09 13:05
ja erst wenn ich klicke - rüschtüsch
is mein code doch falsch ??
|
|
Dude566
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Mo 04.05.09 13:06
Ja dann müsstes du beim OnClick Event des Buttons die Caption ändern, ob das bei den Buttons geht habe ich noch nicht ausprobiert.
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Mo 04.05.09 13:08
aber caption hat ja nicht die eigenschaft FARBE - wie soll ich das dann ändern ?
|
|
Dude566
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Mo 04.05.09 13:09
So hier gehts:
Delphi-Quelltext 1: 2: 3: 4:
| procedure TForm1.BitBtn1Click(Sender: TObject); begin BitBtn1.Font.Color := clRed; end; |
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Mo 04.05.09 13:13
leider nicht, der text wird nicht rot
|
|
Dude566
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Mo 04.05.09 13:16
Klar wird er das, habe es doch gerade ausprobiert. Hast du auch einen BitBtn und keinen normalen Button?
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Mo 04.05.09 13:18
neocox hat folgendes geschrieben : | leider nicht, der text wird nicht rot |
Doch, mit nem Bitbtn funktioniert das.
Die Schriftfarbe eines normalen Buttons kannst du nicht so einfach ändern, da diese aus dem aktuell eingestellten Windows Theme kommt.
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Mo 04.05.09 13:18
ich hab nen bitbtn, und deinen code hatte ich schon so drin. aber des geht nich. kommt zwar kein fehler, aber der bitbtntext wird auch net rot
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31:
| unit Unit11;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons;
type TForm11 = class(TForm) BitBtn1: TBitBtn; procedure BitBtn1Click(Sender: TObject); private public end;
var Form11: TForm11;
implementation
{$R *.dfm}
procedure TForm11.BitBtn1Click(Sender: TObject); begin BitBtn1.Font.Color := clRed; end;
end. |
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Mo 04.05.09 13:20
Hast du auch das Event verknüpft? Setz mal nen Haltepunkt..
Also bei mir funktioniert das zumindest mit dem BitBtn. Delphi 2007
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Mo 04.05.09 13:24
event verknüpft ? also ich hab
1. bitbtn hinzugefügt
2. auf ereignisse des bitbtn geklickt
3. doppelklick rechts neben OnClick
4. das eingefügt: BitBtn1.Font.Color := clRed;
es scheint ja alles zu funzen, aber ich seh kein rot
--- Moderiert von Narses: Beiträge zusammengefasst---
also bei nem panel funzt des wunderbar, nur leider nicht beim bitbtn - seltsam
oki, ich nehm erstmal das panel dafür - aber wie bekomme ich bei nem erneuten klick das rot wieder weg, und dann wieder hin und dann wieder weg ?
|
|
Dude566
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Mo 04.05.09 13:50
Schon mal was von if-Abfragen gehört.
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Mo 04.05.09 13:54
hab mir gedacht, dass es mit if geht. aber mir fehlt die umsetzung, wie die farbe bei KLICK wechseln soll
|
|
Dude566
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Mo 04.05.09 13:57
Sag doch gleich wenn du einen komplett fertigen Code haben willst.
Entweder zu zeigst ein wenig Eigeninitiative oder das wird nix.
Wenn die Farbe geprüft ist, dann die Farbänderung vornehmen.
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
jaenicke
      
Beiträge: 19314
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mo 04.05.09 14:07
Was hast du denn für eine Delphiversion? Also zumindest ab Delphi 3 geht das genau wie du es schreibst mit einem TBitBtn...
Wenn das wirklich so nicht geht: Welche Delphi- und Windowsversion hast du und häng mal bitte das Testprojekt komplett an (.dpr, .pas, .dfm).
Und um die Frage anzufragen, wie wäre es mit: Delphi-Quelltext 1: 2: 3: 4:
| if ...Color = clRed then ... else ... |
Zuletzt bearbeitet von jaenicke am Mo 04.05.09 14:07, insgesamt 1-mal bearbeitet
|
|
neocox 
      
Beiträge: 44
|
Verfasst: Mo 04.05.09 14:07
man, ich will doch keinen fertigen code. ich will eigentlich gar keinen code. ich will hinweise um den fehler selber rauszufinden.
ich will auch net immer meinen falschen code posten weils einfach blöd für mich aussieht
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| procedure TForm11.Panel2Click(Sender: TObject); begin Panel2.Font.Color := clRed; end;
procedure TForm11.Panel3Click(Sender: TObject); begin Panel3.Font.Color := clRed; end;
if panel2.font.color:=clRed then do nothing else panel2.font.color := clWindowText; |
EDIT: hab XP und delphi codegear 2009
Zuletzt bearbeitet von neocox am Mo 04.05.09 14:10, insgesamt 1-mal bearbeitet
|
|
jaenicke
      
Beiträge: 19314
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mo 04.05.09 14:08
Vergleiche sind mit nur = statt := wie bei einer Zuweisung.
|
|