AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Das Minimieren des Fensters abfangen
Thema durchsuchen
Ansicht
Themen-Optionen

Das Minimieren des Fensters abfangen

Ein Thema von Popov · begonnen am 14. Feb 2012 · letzter Beitrag vom 8. Mär 2012
Antwort Antwort
Seite 2 von 4     12 34      
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#11

AW: Das Minimieren des Fensters abfangen

  Alt 17. Feb 2012, 08:59
Polling per Timer? Naja, wenn es funktioniert...
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#12

AW: Das Minimieren des Fensters abfangen

  Alt 17. Feb 2012, 09:11
Ok, wenn ich Zeit habe überlege ich mir etwas anderes, aber vorerst funktioniert es.

Aber letztendlich läuft es doch immer auf einen Timer aus, auch wenn ich nicht brutal das Fenster nach vorne stelle, sondern erst abfrage ob es nötig ist.

Denn das ist die Funktion:

Command=ToggleDesktop

Wie soll ich das abfangen?
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
490 Beiträge
 
Delphi 10.4 Sydney
 
#13

AW: Das Minimieren des Fensters abfangen

  Alt 17. Feb 2012, 09:14
Fein, wenn's funkt, aber schöner fände ich, wenn man die Message ans Desktop-Fenster irgendwie mitschnüffeln könnte und darauf reagieren kann. Dadurch müßte der Timer nicht dauernd aktiv sein. Oder ganz entfallen.
So, wie z.B.:

Code:
wenn die Message daher kommt...
  warte, bis ich nicht mehr topmost bin, dann
  solange ich nicht topmost bin
    setz mich topmost
  gut ist
Nr.1 Delphi-Tool: [F7]
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#14

AW: Das Minimieren des Fensters abfangen

  Alt 17. Feb 2012, 09:17
Wie in dem von mir weiter oben verlinkten Thread steht:
Zitat:
"Show Desktop" sends the command "ToggleDesktop", which, among other things, posts a DTM_RAISE message (WM_USER + 83) to the Desktop (Progman) to set it on foreground.

This could be used to intercept the "Show Desktop" command by an application, but it would involve installing a global hook.
Wenn man bereit ist, den Aufwand zu treiben, hat man eine recht elegante Lösung.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
490 Beiträge
 
Delphi 10.4 Sydney
 
#15

AW: Das Minimieren des Fensters abfangen

  Alt 17. Feb 2012, 09:38
Yo, den global Hook habe ich überlesen, mir aber sowas gedacht. Vllt ist mir am WE langweilig, dann setz ich mich dran, weil ich das auch brauchen könnte.
Nr.1 Delphi-Tool: [F7]
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#16

AW: Das Minimieren des Fensters abfangen

  Alt 17. Feb 2012, 10:09
Wenn man bereit ist, den Aufwand zu treiben, hat man eine recht elegante Lösung.
Letztendlich hätte ich den Aufwand betrieben und werde es auch machen, wobei das Problem in erster Linie gelöst ist. Wir wissen nun was das Problem ist, was es ist und was es nicht ist und was die Lösung ist. Der Rest ist nur noch eine Fleißarbeit.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#17

AW: Das Minimieren des Fensters abfangen

  Alt 17. Feb 2012, 12:01
Es gibt hierfür einen komplizierten Weg, so wie bislang hier beschrieben

oder eben einen einfaachen Weg (den ich immer bevorzuge)

Im Anhang die kompilierte Anwendung und der Source.

Und wie man sieht war der Ansatz schon richtig, aber die Stelle war falsch
Angehängte Dateien
Dateityp: zip NoMinimizeForm.zip (605,2 KB, 11x aufgerufen)
Dateityp: zip NoMinimizeForm_source.zip (5,0 KB, 24x aufgerufen)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (17. Feb 2012 um 12:15 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#18

AW: Das Minimieren des Fensters abfangen

  Alt 17. Feb 2012, 14:26
Bei meiner anwendung kann das BS diese nicht in der ZORDER verändern.
Denke das liegt daran das sie kein Caption hat. (Skin Form)

Zitat:
Und wie man sieht war der Ansatz schon richtig, aber die Stelle war falsch
Korrekt

gruss

Geändert von EWeiss (17. Feb 2012 um 14:40 Uhr)
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#19

AW: Das Minimieren des Fensters abfangen

  Alt 8. Mär 2012, 19:34
Im Anhang die kompilierte Anwendung und der Source.
Wow das ist das wonach ich schon lange suche, hab aber diese Fehlermeldung

NoMinimizeForm.dpr(6): Datei nicht gefunden: 'Vcl.Forms.dcu'

Wie erzeuge ich die dcu Datei?
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#20

AW: Das Minimieren des Fensters abfangen

  Alt 8. Mär 2012, 19:41
Entferne überall "Vlc.", dann klappt es.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 4     12 34      


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 06:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz