Seite 2 von 4

Verfasst: 02.02.2007 19:57
von Kaeru Gaman
sic.

außerdem:
mir ist kein get_focus_on_mouseover bekannt, meinst du get_focus_on_leftclick?

Verfasst: 02.02.2007 20:04
von ts-soft
PB ruft die CreateWindowEx_ API auf, fügt den Button zur internen Liste
hinzu. Wo soll dort ein PB Bug sein. Evtl. ein fehlendes Feature, das aber die
meisten garnicht wünschen, weil das die Exen verlangsamen und aufblasen
würde.

Verfasst: 02.02.2007 20:04
von Georg
Es ist aber ,glaube ich, nicht vorgeschrieben, dass sich Gadgets nicht überlappen dürfen. Oder?

Georg

Verfasst: 02.02.2007 20:06
von ts-soft
Georg hat geschrieben:Es ist aber ,glaube ich, nicht vorgeschrieben, dass sich Gadgets nicht überlappen dürfen. Oder?

Georg
Dürfen sie ja, aber Windows enthält nichts, das diese dann so funktionieren
wie Du es wünscht. Dafür mußte dann selber sorgen. PB erstellt nur den
Button per API

Nachtrag:
Mit API dasselbe ergebnis, also kein Bug

Code: Alles auswählen

EnableExplicit
Global idWndMain , hWndMain
Global Btn1, Btn2
Global Event

idWndMain = OpenWindow(#PB_Any, 0, 0, 500, 500, "Überlappende Gadgets",  #PB_Window_SystemMenu  |#PB_Window_ScreenCentered |#PB_Window_Invisible)
hWndMain = WindowID(idWndMain)

Btn1 = CreateWindowEx_(0, "button", "Btn 1", #WS_CHILD | #WS_VISIBLE, 150, 150, 200, 100, hWndMain, 0, GetModuleHandle_(0), 0)
Btn2 = CreateWindowEx_(0, "button", "Btn 2", #WS_CHILD | #WS_VISIBLE, 200, 200, 200, 100, hWndMain, 0, GetModuleHandle_(0), 0)

HideWindow(idWndMain, 0)

Repeat
  Event = WaitWindowEvent()
  Select Event
    Case #PB_Event_CloseWindow
      If EventWindow() = idWndMain
        End
      EndIf
  EndSelect
ForEver
End

Verfasst: 02.02.2007 20:23
von Georg
Ihr versteht das Probelem nicht.
Wenn ich mich mit der Maus über ein Gadget befinde, kann doch nich das darunter liegende Gadget den Focus erhalten.

Georg

Verfasst: 02.02.2007 20:27
von Kaeru Gaman
du verstehst den kern nicht....

es gibt keine maßgabe, warum gadgets sich überlappen sollten,
also kannst du auch für den fall kein handling voraussetzen.
das musst du schon selber lösen.

und es ist, um mich zu wiederholen, kein PB-Problem, sondern ein OS-Problem.

Verfasst: 02.02.2007 20:29
von ts-soft
Georg hat geschrieben:Ihr versteht das Probelem nicht.
Wenn ich mich mit der Maus über ein Gadget befinde, kann doch nich das darunter liegende Gadget den Focus erhalten.

Georg
Siehste doch, es ist Deine Aufgabe dies zu verhindern, wenn Du sowas
bastelst. PB erstellt per API die Gadgets und stellt die wichtigsten Ereignisse
zur Verfügung. Eine EventDriven Programmiersprache bietet da vielleicht
mehr, erstellt aber keine so kleine und schnelle Exen.
Die Windows API macht da nichts von Hause aus, oder bietet da einfache
Flags für.

Verfasst: 02.02.2007 20:33
von Georg
Ob PB die Gadgets per API erstellt ist glaube ich nicht so sicher!!!!!

Georg

Verfasst: 02.02.2007 20:39
von Kaeru Gaman
.... wie denn sonst .... o_O

Verfasst: 02.02.2007 20:55
von Georg
Sebst gebaut!!!

georg