![]() |
Unterform aus Taskbar holen
Hallo
ich bin auf der Suche nach einer Möglichkeit folgende Aufgabe zu lösen: - ein Hauptfenster wird modal geöffnet - eine Unterform wird innerhalb der Hauptform nicht modal geöffnet, dient zur Eingabe von Detaildaten - gehe ich zurück auf das Hauptfenster, minimiert sich das Unterfenster und liegt in der Taskbar - mit einem weiteren Klick auf den Aufrufbutton der Hauptform will ich die Unterform wieder auf den Schirm bringen und meinen angezeigten Datensatz (TADODataset) mit dem Hauptform synchronisieren. Damit will ich dem Benutzer einige Clicks abnehmen. Frage: wie komme ich ohne Click in die Taskleiste wieder an meine Unterform ? Gruss JohannesK |
Re: Unterform aus Taskbar holen
Hmmm ich weiss zwar nicht ob die Aussage nun richtig ist aber wenn dein
Hauptformular Modal geöffnet wird wirst du auch nicht im Nebenfenster was machen können. Deswegen ja auch Modal... |
Re: Unterform aus Taskbar holen
Delphi-Quellcode:
// ungetested aber logisch :-)
procedure THauptform.Hauptform1OnActivate(Sender:TObject); begin Unterform.BringToFront; end; |
Re: Unterform aus Taskbar holen
Damit bringst du das Unterformular hoch aber kannst nicht damit arbeiten oder irr ich mich da?
|
Re: Unterform aus Taskbar holen
shmia: getestet, gibt aber Zugriffsverletzung, d.h. die Prozedur wird richtig angesprungen, aber das Fenster bleibt in der Taskleiste.
Der Aufruf der Unterform (mit setzen des Filters) sieht so aus:
Delphi-Quellcode:
procedure TF_Projekte.SpeedButton4Click(Sender: TObject);
var i : integer; begin if application.FindComponent('F_ProjStamm') = nil then begin with TF_ProjStamm.Create(Application) do begin adoconnection1 := self.ADOConnection1; qry_Dateneingabe.connection := adoconnection1; qry_Dateneingabe.open; qry_Dateneingabe.Filter := 'ID = ' + self.qry_Dateneingabe.fieldbyname('ID').Asstring; qry_Dateneingabe.Filtered := true; Show; end; end; end; Die Funktion mit der die Daten gespeichert werden sieht so aus:
Delphi-Quellcode:
Vielleicht gibt das weitere Anhaltspunkte ..
procedure TF_ProjStamm.SpeedButton2Click(Sender: TObject);
begin if qry_Dateneingabe.fieldbyname('LINT_Kunde').Value = null then begin showmessage('Bitte einen Kunden auswählen !'); exit; end; qry_Dateneingabe.post; end; :gruebel: |
Re: Unterform aus Taskbar holen
Probier doch einfach mal dein Hauptformular auf nur Show zu stellen.
|
Re: Unterform aus Taskbar holen
kasoft: funktioniert leider auch nicht, da beide Formulare in einer DLL sitzen und die verwendete ADOConnection von der Hauptanwendung übergeben wird. Das funktioniert nur bei einem Aufruf wie z.B.
Delphi-Quellcode:
richtig (zumindest habe ich noch keine andere Variante gefunden).
with TF_Projekte.Create(Application) do
try adoconnection1 := ado; qry_Dateneingabe.Connection := adoconnection1; :gruebel: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:04 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