AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Neues Formular "quasi-modal" öffnen

Ein Thema von sundance · begonnen am 20. Dez 2012 · letzter Beitrag vom 20. Dez 2012
Antwort Antwort
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#1

AW: Neues Formular "quasi-modal" öffnen

  Alt 20. Dez 2012, 15:26
Wenn Du es mit es beispielsweise mit (self) als Owner erzeugst, kannst Du mit

Delphi-Quellcode:
procedure TPseudoMod.FormShow(Sender: TObject);
begin
  EnableWindow(TForm(Owner).Handle,true);
end;
das aufrufende Fenster bedienbar machen, Du müsstest Dir nur einen Mechanismus ausdenken, dass von dort nichts ungewolltes gestartet werden kann.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von sundance
sundance

Registriert seit: 9. Mai 2006
98 Beiträge
 
Delphi 7 Professional
 
#2

AW: Neues Formular "quasi-modal" öffnen

  Alt 20. Dez 2012, 16:39
@Jumpy:
Das könnte funktionieren! Ich werde mal testen, inwiefern die "Dauerschleife" unnötige Prozessorlast erzeugt.
(Sollte aber eigentlich nicht der Fall sein, denn ein "leerlaufendes" Delphiprogramm läuft ja auch in der Message-Endlosschleife...)


@Bummy:
Aktuell werden die beiden Forms in der DPR-Datei erzeugt:
Delphi-Quellcode:
program MKVX;

uses
  Forms,
  MyMainForm in 'MyMainForm.pas{MainForm},
  CoverForm in 'CoverForm.pas{FormCover}; // <--- ChildForm

{$R *.res}
begin
  Application.Initialize;
  Application.CreateForm(TMainForm, MainForm);
  Application.CreateForm(TFormCover, FormCover);
  Application.Run;
end.
Wenn ich dich richtig verstehe, müßte ich die CreateForm für das ChildWindow in die MainForm verlagern?

Geändert von sundance (20. Dez 2012 um 16:43 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Kalakmul
Kalakmul

Registriert seit: 11. Apr 2008
27 Beiträge
 
Delphi 2010 Professional
 
#3

AW: Neues Formular "quasi-modal" öffnen

  Alt 20. Dez 2012, 17:06
Ist das Problem nicht mit bordeigenen Mitteln von Windows lösbar?

Mit "Desktop anzeigen" (Windows Schnellstartleiste; unter Win7 unten rechts in der Taskleiste) hat man wieder einen bedienbaren Desktop und kann z. B. etwas im Explorer nachschauen.

Mit ALT-TAB kann man dann zwischen der betreffenden Anwendung und dem Explorer wechseln.

Ich weiß ja nicht, ob man in deiner Anwendung aus dem Explorer etwas sehr schlecht zu merkendes übertragen muss, sodass unbedingt beide Fenster nebeneinander stehen müssen. Dann geht es so natürlich nicht.
Wer fragt, ist ein Narr für 5 Minuten, wer nicht fragt, ist ein Narr ein Leben lang.
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#4

AW: Neues Formular "quasi-modal" öffnen

  Alt 20. Dez 2012, 17:10
Nein, das Modal angezeigte Fenster müsste nur das Handle Deines Aufrufformulars kennen z.B.

Delphi-Quellcode:
procedure TPseudoMod.FormShow(Sender: TObject);
begin
  EnableWindow(Mainform.Handle,true);
end;
Du kannst auch eine Property für das Handle in das Form einbauen und diese vor dem Showmodal setzen, oder OnShow auf eine eigene Methode verbiegen, oder .....
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 01:28 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