AGB  ·  Datenschutz  ·  Impressum  







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

ShowWindow Verständnisfrage

Ein Thema von Popov · begonnen am 2. Mär 2012 · letzter Beitrag vom 3. Mär 2012
Antwort Antwort
Popov
(Gast)

n/a Beiträge
 
#1

ShowWindow Verständnisfrage

  Alt 2. Mär 2012, 21:38
Kann mir das einer erklären. Irgendwie verstehe ich das nicht.

Was ich will ist paar Fenster ohne Fokusverlust sichtbar machen, deshalb ShowWindow und nicht Show.

http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

Zitat:
Die Funktion ShowWindow darf pro Programm nur einmal mit dem Parameter ShowWindow aus der Funktion WinMain aufgerufen werden. Spätere Aufrufe von der Funktion ShowWindow müssen einen in der Tabelle aufgeführten Werte verwenden, statt einem, der durch den Parameter CmdShow aus der Funktion WinMainfestgelegt ist.
  Mit Zitat antworten Zitat
Benutzerbild von MGC
MGC

Registriert seit: 15. Mai 2008
Ort: Helsa
106 Beiträge
 
Turbo Delphi für Win32
 
#2

AW: ShowWindow Verständnisfrage

  Alt 2. Mär 2012, 21:54
Was ich will ist paar Fenster ohne Fokusverlust sichtbar machen, deshalb ShowWindow und nicht Show.
Wie meinst Du das? Möchtest Du mehrere Fenster sichtbar machen, die alle gleichzeitig den Eingabefokus haben?
Marc
Programmieren ist wie Chemie:
1. Wenn man alles einfach nur zusammenschmeisst kommt es zu unerwarteten Reaktionen.
2. Wenn es plötzlich anfängt zu qualmen, muss man eben noch mal von vorn anfangen.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#3

AW: ShowWindow Verständnisfrage

  Alt 2. Mär 2012, 21:59
Nein, ich will aus Form1 Form2, Form3, usw. aufrufen ohne das Form1 den Fokus verliert. Eigentlich nichts wildes.
  Mit Zitat antworten Zitat
Benutzerbild von MGC
MGC

Registriert seit: 15. Mai 2008
Ort: Helsa
106 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: ShowWindow Verständnisfrage

  Alt 2. Mär 2012, 22:23
So wie ich das kenne, soll ein Fenster beim ersten Aufruf mit showwindow mit den nCmdShow-Daten aus WinMain aufgerufen werden. Jeder weitere Aufruf von ShowWindow muss die Angabe einer nCmdShow-Message haben. Mögliche nCmdShow-Messages findest Du in der angegebenen Tabelle.

Dieses Vorgehen ist eigentlich recht einfach, da beim ersten Aufruf die grundlegenden Daten für den WindowState aufgerufen werden sollen. Spätere Aufrufe mit ShowWindow sollen den WindowSate verändern.

Zitat:
The first time an application calls ShowWindow, it should use the WinMain function's nCmdShow parameter as its nCmdShow parameter. Subsequent calls to ShowWindow must use one of the values in the given list, instead of the one specified by the WinMain function's nCmdShow parameter.
Marc
Programmieren ist wie Chemie:
1. Wenn man alles einfach nur zusammenschmeisst kommt es zu unerwarteten Reaktionen.
2. Wenn es plötzlich anfängt zu qualmen, muss man eben noch mal von vorn anfangen.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#5

AW: ShowWindow Verständnisfrage

  Alt 2. Mär 2012, 22:33
Genau so habe ich es verstanden.

Bzw. nicht verstanden.

Sorry.
  Mit Zitat antworten Zitat
Benutzerbild von MGC
MGC

Registriert seit: 15. Mai 2008
Ort: Helsa
106 Beiträge
 
Turbo Delphi für Win32
 
#6

AW: ShowWindow Verständnisfrage

  Alt 2. Mär 2012, 22:50
experimentiere doch mal ein wenig mit Show und ShowWindow im vergleich.
Ich hänge Dir mal ein "schell-mal-dahin-geklatscht"-Projekt an. Dabei habe ich bei ShowWindow vermieden WinMain aufzurufen und somit nicht die Vorgaben aus der IDE aufgerufen.
Wenn Du nun Deine Form über ShowWindow aufrufst wirst Du bemerken, dass Du sie mit einem normalen Form2.Hide nicht wieder verstecken kannst.
Nach einem Klick auf den Button für das normale Delphi-Form.Show kannst Du das Form auch wieder normal verstecken. Wenn Du nun z.B. Form2 noch mal mit ShowWindow aufrufst wirst Du Dein erwartetes Ergebnis erhalten, aber dennoch immer mit Focus, obwohl ich es als nicht aktiv aufgerufen habe.
Du wirst Dich mit ShowWindow also vollkommen selbst um Deine Fenster kümmern müssen. Daher verwende ich ShowWindow nur wenn ich von außerhalb über das Handle auf eine Form einer App zugreifen muss.

//Edit: Ich denke mal, so ähnlich wie es beim Anklicken der Buttons mit Delphi-FormX.Show realisiert ist, möchtest Du es auch gern haben.
Angehängte Dateien
Dateityp: zip Show und ShowWindow.zip (9,7 KB, 11x aufgerufen)
Marc
Programmieren ist wie Chemie:
1. Wenn man alles einfach nur zusammenschmeisst kommt es zu unerwarteten Reaktionen.
2. Wenn es plötzlich anfängt zu qualmen, muss man eben noch mal von vorn anfangen.
  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 04: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