AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

neue Komponente?

Ein Thema von heiopei · begonnen am 31. Jan 2003 · letzter Beitrag vom 1. Feb 2003
Antwort Antwort
Seite 1 von 2  1 2      
heiopei
(Gast)

n/a Beiträge
 
#1

neue Komponente?

  Alt 31. Jan 2003, 22:39
hallo,
wie kann ich zur laufzeit eines programmes z.b. ein neues label erzeugen?
(ich kann ja keine 100 labels bei der programmierung erzeugen und dann zur
laufzeit visible jeweils auf true stellen!!)
danke,
heiopei
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2
  Alt 1. Feb 2003, 03:53
Moin heiopei,

zum Beispiel so:

Delphi-Quellcode:
procedure TfrmMAIN.Button1Click(Sender: TObject);
begin
  with TLabel.Create(self) do
  begin
    Parent := self;
    Caption := 'TEST';
  end;
end;
Wichtig:
Da der Aufruf innerhalb einer OnClick Routine des Hauptformulares (frmMAIN) erfolgt, ist self das Hauptformular.
Dadurch (Create(self)) wird das Formular Besitzer des Labels, so dass es automatisch freigegeben wird, wenn das Formular freigegeben wird.
Bei Create(nil) müsste man sich selber um die Freigabe kümmern.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#3

Re: neue Komponente?

  Alt 1. Feb 2003, 10:31
Hallo heiopei,
Zitat von heiopei:
ich kann ja keine 100 labels bei der programmierung erzeugen und dann zur
Warum nicht?
In der Komponenten-Palette oben, 10x Doppelklick auf LAbel. Dann alle 10 Labels auf dem Formular markieren, Strg+c und dann 10x Strg+v. Schon hast Du 100 Labels, jetzt nur noch Sortieren, also, alle 100 Markieren, rechtsklick und dann im nächsten Fenster nach Deinen Wünschen ausrichten. Ich behaupte das dies sogar schneller geht als eine for-Schleife zu schreiben, die Dir 100 zur Runtime erzeugt.
Zitat:
laufzeit visible jeweils auf true stellen!!)
Musst Du ja nicht, sind automatisch schon auf Visible und Enabled.

Grüsse, Daniel
  Mit Zitat antworten Zitat
heiopei
(Gast)

n/a Beiträge
 
#4
  Alt 1. Feb 2003, 14:53
Moin,
Zitat:
Musst Du ja nicht, sind automatisch schon auf Visible und Enabled.
eigentlich meinte ich damit, dass die labels erst einzeln erscheinen sollen
und nicht schon anfangs sichtbar sind!

Zitat:
ich kann ja keine 100 labels bei der programmierung erzeugen und dann zur...
leider würde ich dann die übersicht völlig verlieren, da ich sowieso
schon sehr viele koponenten auf dem bildschirm habe!

welche funktion hat "parent"?

grüße heiopei
  Mit Zitat antworten Zitat
Benutzerbild von RomanK
RomanK

Registriert seit: 7. Jun 2002
Ort: Kirchheim unter Teck
1.036 Beiträge
 
Delphi 7 Personal
 
#5
  Alt 1. Feb 2003, 15:06
Hoi,
schau mal in der Hilfe nach dort steht das ganz gut beschrieben.
Wenn du mal wieder nicht weist was ein Begriff bedeutet dann schreiben ihn in die Unit, klicke ihn an und dann F1, dann kommt die Hilfe ...
Roman Keller
Krieg ist Gottes Art den Amerikanern Geographie beizubringen!
  Mit Zitat antworten Zitat
heiopei
(Gast)

n/a Beiträge
 
#6
  Alt 1. Feb 2003, 15:08
dankeeeeeeee
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#7
  Alt 1. Feb 2003, 17:00
Davon abgesehen, dass ich glaube die Schleife schneller getippt hätte, wie die ganzen Label voneinander runtergeschoben, ist es mit der Schleife viel einfacher, weil man sie danach auch alle ordentlich ansprechen kann. Nicht so ein Kram mit FindComponent (die mMn unsinnigste Delphi-Funktion aller Zeiten!)
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Benutzerbild von RomanK
RomanK

Registriert seit: 7. Jun 2002
Ort: Kirchheim unter Teck
1.036 Beiträge
 
Delphi 7 Personal
 
#8
  Alt 1. Feb 2003, 17:40
Zitat von Nailor:
Davon abgesehen, dass ich glaube die Schleife schneller getippt hätte, wie die ganzen Label voneinander runtergeschoben, ist es mit der Schleife viel einfacher, weil man sie danach auch alle ordentlich ansprechen kann. Nicht so ein Kram mit FindComponent (die mMn unsinnigste Delphi-Funktion aller Zeiten!)
Du sagsch, mit ner Schleife geht es besser, findest aber FindComponent unsinnig ... sag mir mal bitte wie das mit einer Schleife, aber ohne FindComponent, gehen soll
Roman Keller
Krieg ist Gottes Art den Amerikanern Geographie beizubringen!
  Mit Zitat antworten Zitat
Brüggendiek

Registriert seit: 13. Dez 2002
Ort: Dortmund
275 Beiträge
 
Delphi 5 Standard
 
#9
  Alt 1. Feb 2003, 17:53
)Hallo!

Zitat von FuckRacism:
Du sagsch, mit ner Schleife geht es besser, findest aber FindComponent unsinnig ... sag mir mal bitte wie das mit einer Schleife, aber ohne FindComponent, gehen soll
Wenn die Elemente zur Laufzeit erzeugt werden (mit einer Schleife), kann man doch das Ganze in ein Array packen und dann mit einer weiteren Schleife ohne FindComponent (was ist das - habe ich nie gebraucht ) darauf zugreifen.

Gruß

Dietmar Brüggendiek
Dietmar Brüggendiek
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#10
  Alt 1. Feb 2003, 19:28
Moin Dietmar,

ein eigenes Array kann man natürlich auch erstellen.
Mit FindComponent wird nur das interne Array der Komponenten durchsucht.
Vom Grundprinzip her also kein Unterschied, obwohl das eigene Array natürlich schneller sein kann.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 19:42 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