![]() |
Caption in neu erzeugtem Formular verändern?
Hallo Delphi-Programmierer!
Ich habe in meinem Programm ein zusätzliches Formular (MyForm), das nicht in der Projektdatei (.dpr) erzeugt wird, sondern erst wenn es benötigt wird:
Delphi-Quellcode:
In der Unit von MyForm kann ich alle Steuerelemente von MyForm beliebig verändern, NUR NICHT die Caption von MyForm:
var
ThisForm: TMyForm; ThisForm := TMyForm.Create(self); try with ThisForm do begin Caption := 'Meine Titelzeile'; // funktioniert! Edit1.Text := 'Mein Text'; // funktioniert! end; Application.BringToFront; if ThisForm.ShowModal = mrOK then begin // Tue etwas end; finally ThisForm.Free; end;
Delphi-Quellcode:
Warum kann ich in der MyForm-Unit die Titelzeile des Formulars nicht verändern?
Edit1.Text := 'NEU'; // funktioniert!
MyForm.Caption := 'NEU'; // funktioniert NICHT! Wie kann ich sie trotzdem verändern? Wäre für jeden Hinweis sehr dankbar! |
Re: Caption in neu erzeugtem Formular verändern?
Hey.
In welcher Funktion verwendest du den Code
Delphi-Quellcode:
Wenn du ihn beim OnCreate der MyForm einfügst ist es klar dass es nicht geht. Denn wenn du die Form erstellst wird die Caption auf 'Neu' gesetzt, danach führst du aber den Code Caption := 'Meine Titelzeile'; aus.
Edit1.Text := 'NEU'; // funktioniert!
MyForm.Caption := 'NEU'; // funktioniert NICHT! Mach mal nen Test und setz einen Button auf MyForm und änderen beim OnClick die Caption. Ändert sich dann was?! Hatte letztens aber auch mal so ein komisches Problem mit dem ShowModal! :? |
Re: Caption in neu erzeugtem Formular verändern?
Zitat:
Vielen Dank für die Antwort! |
Re: Caption in neu erzeugtem Formular verändern?
Hallo!
Wie ist den Dein Zugriff? MyForm.Caption? Das geht nicht, Du hast das Formular nicht mit der localen Variable MyForm erzeugt, sondern mit ThisForm!!! Das sind zwei unterschiedliche Zeigter! Also entweder mit self.Caption oder im Create die locale Variable verwenden! Frank :coder: |
Re: Caption in neu erzeugtem Formular verändern?
Zitat:
Herzlichen Gruß, Peter |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:06 Uhr. |
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