Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Speedbutton während der Laufzeit (https://www.delphipraxis.net/12548-speedbutton-waehrend-der-laufzeit.html)

Ping Pong 29. Nov 2003 15:06


Speedbutton während der Laufzeit
 
Hallo.

Ich möchte einen Speedbutton erst während der Laufzeit des Programmes erstellen lassen.
Dies habe ich bis jetzt so gelöst:

var
Speed1:array[1..100] of TSpeedbutton;



Speed1[anzahl]:=TSpeedbutton.Create(self);
Speed1[anzahl].Top:=anzahl*40;
Speed1[anzahl].Left:=608;

Nun möchte ich dem Button noch ein Bild hinzufügen (also Glyph) und dem Button noch eine Action zuweisen.
Ich möchte aber das Bild nicht erst von der Festplatte laden, sondern aus dem Programm heraus.
Also nicht: Speed1[anzahl].Glyph.Loadfromfile
Hab mir irgendwie überlegt, ob das mit ner Imagelist geht???!!

Cu PingPong

MrKnogge 29. Nov 2003 15:09

Re: Speedbutton während der Laufzeit
 
Hi !

Du kannst das BitMap als Ressource einbinden, und dann zur Laufzeit laden.

Weist du wie man eine Ressource-Datei erstellst und einbindest ?

Ping Pong 29. Nov 2003 15:17

Re: Speedbutton während der Laufzeit
 
Nich so wirklich!

Niko 29. Nov 2003 15:21

Re: Speedbutton während der Laufzeit
 
Zitat:

Zitat von Ping Pong
Hab mir irgendwie überlegt, ob das mit ner Imagelist geht???!!

Ja, du kannst das Bild mit folgendem Code laden:
Delphi-Quellcode:
ImageList1.GetBitmap(anzahl, Speed1[anzahl].Glyph);

Ping Pong 29. Nov 2003 15:25

Re: Speedbutton während der Laufzeit
 
Jo, mit dem Befehl von Niko geht´s. Thx.
Un wie weise ich dem Button nun noch eine Funktion zu?

Niko 29. Nov 2003 15:33

Re: Speedbutton während der Laufzeit
 
Willst du dem Button ein Ereignis (OnClick, ...) zuweisen oder die Eigenschaft Action setzen?

MrKnogge 29. Nov 2003 15:40

Re: Speedbutton während der Laufzeit
 
Du musst die Procedure erst schreiben, und dann zuweisen.

Delphi-Quellcode:
procedure MyProcedur(Sender: TObject);
begin
  // Das soll ausgeführt werden
end;
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  BitBtn1.OnClick := MyProcedur;
end;

Ping Pong 29. Nov 2003 15:40

Re: Speedbutton während der Laufzeit
 
Weiss nich wirklich wo da der Unterschied liegt, will aber damit ereichen, dass wenn ich auf den Button drücke, z.B. label2.caption:='Test' gesetzt wird oder eine procedure ausgeführt wird.

Ping Pong 29. Nov 2003 15:44

Re: Speedbutton während der Laufzeit
 
@MrKnogge
Hab ich mir auch schon gedacht, dann kommt aber:
[Fehler] Unit1.pas(170): Inkompatible Typen: 'Methodenzeiger und reguläre Prozedur'

MrKnogge 29. Nov 2003 15:45

Re: Speedbutton während der Laufzeit
 
Welche Dlphi Version benutzt du denn ?
Action Zuweisung geht doch nur mit pro, oder ?


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:19 Uhr.
Seite 1 von 2  1 2      

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-2025 by Thomas Breitkreuz