Event in der Taskleiste

Anfängerfragen zum Programmieren mit PureBasic.
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Event in der Taskleiste

Beitrag von marco2007 »

Hallo liebe Kollegen,

kann mir jemand sagen, wie man einen Click auf ein geöffnetes Programm in der Taskleiste abfragt?

Sprich: Ich öffne einige Programme, wie Outlook, Explorer, .... Nun kann man diese in der Taskleiste sehen...und es gibt zwei States - eins gedrückt oder keines (wie Option)...Wie frag ich das ab? Hat da jemand eine Idee?


Danke
Marco
Windows 11 - PB 6.03 x64
_________________________________
Benutzeravatar
#NULL
Beiträge: 2238
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

ist der zustand in der taskleiste nicht einfach analog zum maximiert-/minimiert-status des fensters?
my pb stuff..
Bild..jedenfalls war das mal so.
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Würd ich auch sagen. Dann sind isIconic_() und GetForegroundWindow_() deine Freunde.
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Beitrag von marco2007 »

Mein Problem ist folgendes:

Ich habe eine Anwendung mit drei Fenster (2 davon mit Parentwindow, da sie in der Taskleiste unsichtbar sein sollen).

Wenn ich jetzt andere Fenster in der Vordergrund und ich drücke auf mein Programm, wird nur das eine in den Vordergrund geholt.

Darum wäre es toll, wenn man den Click abfragen könnte....
Windows 11 - PB 6.03 x64
_________________________________
Benutzeravatar
#NULL
Beiträge: 2238
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

würde es sowas nicht machen?

Code: Alles auswählen

  event=WaitWindowEvent()
  Select event
    Case #PB_Event_ActivateWindow
      SetActiveWindow(#child1)
      SetActiveWindow(#child2)
      SetActiveWindow(#main)
  EndSelect
my pb stuff..
Bild..jedenfalls war das mal so.
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Beitrag von marco2007 »

...da haut`s erm her....weil mit SetActiveWindow gibt`s wieder ein #PB_Event_ActivateWindow .... damit wieder ein Setactive....

IsIonic()?

Ich werde, wenn ich daheim bin ein Beispielcode posten...ich habe ja bereits einiges probiert, vielleicht habe ich etwas nur falsch umgesetzt.
Windows 11 - PB 6.03 x64
_________________________________
Benutzeravatar
#NULL
Beiträge: 2238
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

IsIonic_(), winAPI, brauchst du aber nicht, es gibt GetWindowState(#PB_Window_Minimize)
my pb stuff..
Bild..jedenfalls war das mal so.
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Beitrag von marco2007 »

Ich habe das ganze bereits mit Getwindowstate()...das funkt aber nur, wenn man erst minimiert und dann wieder normalisiert..nicht aber, wenn man ein anderes fremdes Fenster in den Vordergrund bringt (mein Programm ist dann normal im Hintergrund) und dann in der Taskleiste auf das Fenster klickt, dann erscheint nur das eine. Mit GetForegroundWindow_() habe ich mich auch bereits gespielt, da haut`s erm a her...das Optimale wäre, die Abfrage des Clicks in der Taskleiste (glaube ich)....
Windows 11 - PB 6.03 x64
_________________________________
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

marco2006 hat geschrieben:das Optimale wäre, die Abfrage des Clicks in der Taskleiste (glaube ich)....
poste erstmal Deinen Beispielcode, dann schauen wir weiter. ;-)

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

marco2006 hat geschrieben:das Optimale wäre, die Abfrage des Clicks in der Taskleiste (glaube ich)....
Das glaubst aber auch nur du, kannst dich ja schonmal ueber Hooks
informieren ;)

Ein kleiner Code waere hier wirklich sinnvoll, allein schon dewegen weil
es kein reiner PB Code zu sein scheint (SetParent ?).
Antworten