AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi eigenschaften von buttons, die zur laufzeit erstellt wurden
Thema durchsuchen
Ansicht
Themen-Optionen

eigenschaften von buttons, die zur laufzeit erstellt wurden

Ein Thema von ch33seburger · begonnen am 13. Jul 2005 · letzter Beitrag vom 14. Jul 2005
Antwort Antwort
ch33seburger

Registriert seit: 23. Nov 2003
31 Beiträge
 
#1

eigenschaften von buttons, die zur laufzeit erstellt wurden

  Alt 13. Jul 2005, 23:01
hi

ich würde gerne wissen wie ich die eigenschaften von buttons, die ich zur laufzeit erstellt habe ändern kann?

so sieht mein code aus:
Delphi-Quellcode:
for i := 0 to nl.length - 1 do begin
  node2 := xmlDoc.documentElement.selectSingleNode('/buttonset/Default');
  x:=x+1;
    n := nl[i];
node2 := xmlDoc.documentElement.selectSingleNode('/buttonset/'+n.nodename);
newpage:=TTabSheet.Create(Self);
newpage.PageControl := PageControl1;
newpage.name:='btab'+inttostr(x);
newpage.Caption:=n.nodeName;
x:=x+1;
button1 := Tspeedbutton.Create(self);
button1.Name:='speedbutton'+inttostr(x);
button1.parent := newpage;
button1.Width:=pagecontrol1.Width div 6;
button1.Align:=alleft;
button1.caption:=node2.selectSingleNode('button1').attributes.item[0].text;
button1.hint:=node2.selectSingleNode('button1').attributes.item[1].text;
button1.ShowHint:=true;
button2 := Tspeedbutton.Create(self);
button2.Name:='speedbutton'+inttostr(x);
button2.parent := newpage;
button2.Width:=pagecontrol1.Width div 6;
button2.Align:=alleft;
button2.caption:=node2.selectSingleNode('button2').attributes.item[0].text;
button2.hint:=node2.selectSingleNode('button2').attributes.item[1].text;
button2.ShowHint:=true;
x:=x+1;
//... usw
bei den buttons (das sind dann insgssamt 6 stück auf jedem tabsheet) würde ich gerne bei einem onresize ereignis der form haben, dass sie button1.Width:=pagecontrol1.Width div 6; einnehmen... aber ich weiss nicht wie ich an die buttons rankomme? :/
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: eigenschaften von buttons, die zur laufzeit erstellt wur

  Alt 13. Jul 2005, 23:19
Entweder setzt du die Anchor Eigenscfaten beim erstellen oder positionierts sie von Hand im OnResize Ereignis der Form. An die Schaltflächen kommst du mit Hier im Forum suchenFindComponent (schon wieder ) dran.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
ch33seburger

Registriert seit: 23. Nov 2003
31 Beiträge
 
#3

Re: eigenschaften von buttons, die zur laufzeit erstellt wur

  Alt 14. Jul 2005, 20:33
das mit dem findcomponent klappt schon ganz gut.. aber sobald ich das mit einer schleife versuche bekomme ich immer ne fehlermeldung sobald ich das fenster vergrößern/verkleinern will :/

Delphi-Quellcode:
for zz := 1 to 6 do
  begin
    (FindComponent('speedbutton'+IntToStr(zz)) as TspeedButton).Width:=pagecontrol1.Width div 6;
    (FindComponent('speedbutton'+IntToStr(zz)) as TspeedButton).Align:=alleft;
  end;
end;
aber warum??
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: eigenschaften von buttons, die zur laufzeit erstellt wur

  Alt 14. Jul 2005, 20:36
Und welche Fehlermeldung -> Glaskugel ist gerade zur Reperatur.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
ch33seburger

Registriert seit: 23. Nov 2003
31 Beiträge
 
#5

Re: eigenschaften von buttons, die zur laufzeit erstellt wur

  Alt 14. Jul 2005, 20:49
Zitat:
Project Project1.exe raised exception class EAccessViolation with message 'Access violation at adress 004702C5 in module 'Project1.exe'. Read of adress 0000004C'. Process stopped. Use Step or Run to continue.
:>

ich vermute es hat was damit zu tun das die anderen speedbuttons in einem anderen tabset sind...
weil wenn ich die schleife bis 7 gehen lasse funzt alles.. und das sind dann die speedbuttons auf dem ersten tab. aber sobald ich mehr als 7 mache gibt es diesen fehler :/

ps: hoffe deiner glaskugel geht es bald wieder besser.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: eigenschaften von buttons, die zur laufzeit erstellt wur

  Alt 14. Jul 2005, 21:06
Deine Vermutung ist richtig. Du findest nur die Komponenten, die den richtigen Parent haben - das ist der, dessen Methode FindComponent() du aufgerufen hast. An dieses Thema erinnere ich mich noch.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#7

Re: eigenschaften von buttons, die zur laufzeit erstellt wur

  Alt 14. Jul 2005, 21:11
die bessere/schnellere Variante wäre auch die Buttons nach dem erstellen in eine eigene Liste zu packen (TList/TObjectlist/Array etc.). Dann kannst du dir auch sicher sein das deine Buttons in der Liste sind und es müssen auch nicht alle Komponenten durchgegangen werden obwohl du ja eigentlich nur die Buttons brauchst.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:30 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