Seite 1 von 2

Ein Fenster 'locken'

Verfasst: 09.01.2005 19:31
von Leo
Ich suche eine API Funktion, um ein Fenster zu 'locken' also ich will das Hauptfenster 'locken', während ich in einem 2. Fenster etwas mache

Verfasst: 09.01.2005 19:53
von FGK
Hi Leo,

könntest du das "locken" etwas mehr beschreiben - was für ein verhalten sollte das andere Fenster dabei zeigen?
Ne genaue Beschreibung ist eigentlich immer das allerwichtigste um Missverständnisse auf ein erträgliches Maß zu reduzieren *ggg

Gruß

FGK

Verfasst: 09.01.2005 20:13
von ts-soft
Um ein Fenster zu "locken" öffnet man das zweite Fenster Programm-Modal. Dies ist in PB bisher aber nicht vorgesehen, so das Du entweder per API ein modales Dialogfenster erstellst, was nicht ganz einfach ist, oder Du deaktivierst alle Gadgets deines Hauptfensters, was am einfachsten ist

LOKEN

Verfasst: 09.01.2005 20:22
von Hroudtwolf
Du musst nur das 2.Fenster als Procedure aufrufen.
Es sollte über eine eigene Ereignissschleife verfügen und es sollte per
activatewindow() obengeahlten werden.
Währenddessen kann man keine Eingaben oder Clicks im HF machen.

Verfasst: 09.01.2005 20:26
von ts-soft
@Hroudtwolf
Und wie soll das Hauptfenster neugezeichnet werden ?

Neuzeichnen

Verfasst: 09.01.2005 20:36
von Hroudtwolf
@TS-Soft



Man nehme an das Hauptfenster hat die Nummer 1.

Code: Alles auswählen

UpdateWindow_(Usewindow(1))

Verfasst: 09.01.2005 20:42
von ts-soft
Dann darf er aber kein WaitWindowsEvent benutzen, sondern muß WindowsEvent benutzen, was ich bei Anwendungen vermeide!

Verfasst: 09.01.2005 21:34
von Hroudtwolf
@TS-Soft

Du meinst das bestimmt wegen den resourcen !?!?

Code: Alles auswählen

Repeat
eventid.l=windowevent()

select eventid
case #pb_event_closewindow
raus=1
endselect
updatewindow_(usewindow(1))
delay(10); Spart Prozessorarbeit
until raus=1
end 


Verfasst: 09.01.2005 22:20
von bluejoke
Hab ich im Chat mal gefragt, ist, wenn ich dich richtig verstanden habe, genau das was du suchst:

Code: Alles auswählen

EnableWindow_(WindowID(window),0)
Probiers einfach mal aus!
Redraw u.s.w. funzt, nur user-eingaben werden nicht akzeptiert.

Verfasst: 10.01.2005 14:39
von Leo
Joa danke Bluejoke das ist was ich gesucht habe... :)