Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   TButton für IDE (https://www.delphipraxis.net/165202-tbutton-fuer-ide.html)

MechMac666 18. Dez 2011 13:06

TButton für IDE
 
Hallo,

ich habe eine IDE und würde gerne die Standardobjekte gegen andere, besser geeignete, tauschen.
Momentan erzeuge ich z.B. "echte" Buttons. Mit OnMouseDown bzw. up und MouseMove kann der Benutzer die Objekte platzieren.
So an sich funktioniert das ganz gut.

Schöner wären aber Buttons, welche auch beim anklicken nicht visuell gedrückt werden. So wie in der delphi IDE.
Kann man das vielleicht mit abgeleiteten Komponenten machen?

Notfalls könnten auch TImage-Komponenten herhalten, aber irgendwie ist das Blöde erst einen Button zu erzeugen, einen Screenshot zu machen und den Bildausschnitt der Image-Kompo zuweisen. Das geht doch bestimmt auch eleganter, oder?

Gruß, Andreas

Jens Hartmann 18. Dez 2011 13:22

AW: TButton für IDE
 
Vieleicht versteh ich Deine Frage nicht, was willst du denn genau bezwegen. Es ist doch genau das was der User möchte, er will sehen, ob er was gemacht hat...

Gruß Jens

MechMac666 18. Dez 2011 13:33

AW: TButton für IDE
 
Nun ja, es funktioniert auch soweit was ich da garade mache, aber z.B. bei Comboboxen sieht das gräßlich aus. Die haben kein OnMouseDown/Up event. Jedes Mal wenn der User das Teil zum verschieben anklickt, erscheint kurz die DropDown-Liste.

Im Grunde hätte ich gerne Objekte wie in der Delphi-IDE. Wenn man da z.B. auf eine Schaltfläche drückt, wird sie nicht sichtbar gedrückt.
Wenn man sie anklickt, erscheinen (bei mir) blaue Punkte an den Ecken zum skalieren.

Wenn ich z.B. bei einem 0815-Button versuche die skalier-Punkte mit TShape nachzubilden stelle ich fest, das ich nicht über Tbutton zeichnen kann.

Toll wären z.B. Buttons, welche ihr Design weder bei erhalten des Focus, noch bei Klick verändern. Die sollen aber weiterhin aussehen wie die Standardkompos. Schon deswegen weil die ja von OS zu OS (Xp zu Win7) verschieden aussehen.

Bummi 18. Dez 2011 13:42

AW: TButton für IDE
 
Dazu müsstest Du den CompoenentState in csDesigning bringen ....

MechMac666 18. Dez 2011 15:05

AW: TButton für IDE
 
Die Frage wäre dann, wie?

Sowas geht z.B. nicht:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var butt:tbutton;
begin
 form1.SetDesigning(true,true);
 butt:=tbutton.Create(form1);
 //butt.parent:=panel1;
 butt.caption:='test';
 butt.Name:='testbutton';
 butt.Left:=10;
 butt.top:=10;
 //panel1.InsertComponent(butt);
 panel1.InsertControl(butt);
end;

MechMac666 18. Dez 2011 21:45

AW: TButton für IDE
 
Liste der Anhänge anzeigen (Anzahl: 1)
So abwegig ist die Idee mit den Bildern gar nicht.
Ist zwar ein bisschen krank, aber es funktioniert.
Ich denke ich probiere es damit falls ich keine weiteren Infos zum SetDesigning finde.

Das gute Stück kann bisher nur TButton und TCheckBox. Weitere Objekte zu implementieren ist recht einfach.
Falls es tatsächlich jemanden interessieren sollte, ich habe ein Beispiel angehangen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:53 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz