Zum Inhalt springen

Unsichtbares Fenster


whizzle

Empfohlene Beiträge

Moin!

Kann mir jemand von Euch erklären, wie man den Funktionsaufruf "ShowWindow(SW_HIDE)" sinnvoll nutzen kann? Nach dem Rücksprung ist das Fenster unsichtbar und scheinbar nur noch im Task-Manager zugänglich. Inaktiv ist es auch, also wie kann es weiter Nachrichten verarbeiten?

Danke im voraus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo!

Wenn ein Fenster doch nicht mehr sichtbar ist, welche Nachrichten sollte es dann erhalten (außer WM_TIMER)? Du könnest aber die Nachrichtenbearbeitung ändern, so daß Dein Prog dauerhaft irgendwas macht, im Gegensatz zu Nachrichtenbearbeitung mit while( GetMessage(...) ), da dort nur etwas geschieht wenn Nachrichten ankommen. Dies würde in etwa so aussehen:

while( 1 )

{

if(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))

{

if( msg.message==WM_QUIT )

break;

else

{

TranslateMessage(&msg);

DispatchMessage(&msg);

}

...

deine spezielen Anweisungen

...

}

}

Ich hoffe das Dich das irgendwie weiter bringt! Wenn nicht frag' nochmal genauer!

Gruß

Daniel

[ 25. April 2001: Beitrag editiert von: Strato ]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Daniel,

erstmal Danke für die Antwort. Ich habe eigentlich nichts spezielles vor, aber mich interessiert einfach, welche Möglicheiten man mit dieser Option (SW_HIDE) hat. Lege ich mit Deiner Lösung nicht das ganze System lahm? Wäre da ein Hintergrundthread nicht besser? Und wie kann ich meinem Fenster WM_QUIT-Nachrichten (oder andere Userbefehle) zukommenlassen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo!

1. Mit dieser Lösung legst Du keine Systeme lahm da das Programm ja auch nur eine begrenzte CPU-Zeit bekommt (die meisten Computerspiele verwenden diese Lösung).

2. Nachrichten wie etwa WM_QUIT muss sich das Programm selbst schicken wenn seine Aufgabe erledigt ist, oder Du hookst dich an die System-Nachrichtenschleife, dann kannst Du immer noch alle bzw. die gewünschten Nachrichten erhalten und darauf Reagieren!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo!

Zu erklären wie man die Hauptnachrichtenschleife anzapft würde jetzt den Rahmen sprengen! Ist nicht sehr kompliziert, finde ich! Wenn Du mir deine eMail-Adresse gibst könnte ich Dir einen gescannten Artikel aus der c't senden der dies Beschreibt!

Grüße aus dem Ruhrpott in den Ruhrpott!

P.S. Vergiss die MFC!

[ 26. April 2001: Beitrag editiert von: Strato ]

Link zu diesem Kommentar
Auf anderen Seiten teilen

problem ist, das unser mailserver in der firma gerade umgezogen ist. zusammen mit der ausbildungsabteilung und die leute es in zwei wochen nicht geschafft haben, das ding wieder ans netz zu hängen. vielleicht wäre es eine möglichkeit das packet zu teilen oder in ein bis zwei wochen nocheinmal zu schicken.

ps: wenn die ct nach dem 1.1.2000 erschienen ist, würde es auch reichen, wenn du die ausgabe postest

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 8 Monate später...

sers.

ich weiss nicht, ob ihr inzwischen eine Loesung gefunden habt, habe aber gesehen das das Thema erneut angesprochen wurde...hier steht wie es bei der winapi geht

also bei der Winapi kenne ich 2 Möglichkeiten, dass Programm unsichtbar zu machen....

die Funktionen ShowWindow und UpdateWindow entfernen oder kurz vor der ShowWindow-Funktion

iCmdShow = SW_HIDE;

einfuegen...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...