AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Aufruf von Formularen über den Namen
Thema durchsuchen
Ansicht
Themen-Optionen

Aufruf von Formularen über den Namen

Ein Thema von JohannesK · begonnen am 17. Jul 2003 · letzter Beitrag vom 17. Jul 2003
Antwort Antwort
JohannesK

Registriert seit: 17. Jul 2003
Ort: Abtwil
118 Beiträge
 
Delphi 2010 Professional
 
#1

Aufruf von Formularen über den Namen

  Alt 17. Jul 2003, 15:43
Ich möchte per Doppelclick aus einem Treeview-Element über die absolute Adresse einen Formularnamen aus einem Array auslesen. Mein Problem

wie komme ich von diesen Angaben

N := (treeview1.Selected.AbsoluteIndex);
ItemName := MyRecArr[N].PName; // Pname ist der Formularname

zu einer vernünftigen Prozedur für das öffnen des entsprechenden Formulars mit dem Namen Pname ?

Dankbar für jeden Hinweis.
  Mit Zitat antworten Zitat
Blizzard

Registriert seit: 4. Jan 2003
88 Beiträge
 
Delphi 6 Enterprise
 
#2

Re: Aufruf von Formularen über den Namen

  Alt 17. Jul 2003, 16:12
warum schreibst du das formular ned einfach in das object der ttreeview node?

was ich meine:
Delphi-Quellcode:

 treeview.Items.AddChildObject(nil,'form1',@form1);

var
 form:tform;
begin
 form:=tform(treeview.selected.data);
 form.show;
end;
der erste teil fügt eine neue node in den treeview ein der zweite teil zeigt die form die in der ausgewählten node "gespeichert" ist an.

ansonsten wenn de bei deiner methode bleiben willst müssteste die form über
Delphi-Quellcode:
var
 form:tform;
begin
 form:=application.findcomponent(itemname);
 form.show;
end;
finden können.

mfg
blizzard
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Aufruf von Formularen über den Namen

  Alt 17. Jul 2003, 16:17
Moin Johannes,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Da die Formulare Komponenten des Application Objektes sind, könntest Du es so machen

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

var
  frmWork : TForm;

begin
  frmWork := Application.FindComponent(MyRecArr[N].PName) as TForm;
  if frmWork <> nil then frmWork.Show;
end;
Wieso jetzt der Index in der Formularliste mit dem AbsoluteIndex eines Nodes korrespondiert weiss ich nicht, allerdings wäre es flexibler den Index der Formularliste in der Eigenschaft Data zu speichern.

[EDIT]

Schon wieder zu spät

[/EDIT]
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
JohannesK

Registriert seit: 17. Jul 2003
Ort: Abtwil
118 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Aufruf von Formularen über den Namen

  Alt 17. Jul 2003, 16:49
Herzlichen Dank für die beiden Möglichkeiten, ich werde es gerade ausprobieren !
  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 18:39 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