DontMoveWindow()

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
Jacobus
Messages : 1559
Inscription : mar. 06/avr./2004 10:35
Contact :

DontMoveWindow()

Message par Jacobus »

C'est une commande que j'aurai bien aimé trouver, je le rajouterai dans les suggestions.

Est-ce que vous connaitriez une façon de procéder pour empêcher le déplacement d'une fenêtre par l'utilisateur? J'ai une appli que j'ai pas envie qu'elle bouge pendant un process.

j'ai tenté un truc mais c'est pas efficace longtemps.

Code : Tout sélectionner

flagwin = #PB_Window_SystemMenu |#PB_Window_WindowCentered |#PB_Window_TitleBar
  If OpenWindow(#Win_0,0,0, ww, wh, flagwin, "Window 0")=0 Or CreateGadgetList(WindowID(#Win_0))=0  
    End 
  EndIf 
Puis au lancement du process :

Code : Tout sélectionner

flagwin = #PB_Window_WindowCentered
            UpdateWindow_(WindowID(#Win_0))
                 ;code...
fin du process :

Code : Tout sélectionner

flagwin = #PB_Window_SystemMenu |#PB_Window_WindowCentered |#PB_Window_TitleBar
UpdateWindow_(WindowID(#Win_0))
Ca marche pendant quelque seconde, mais si j'insiste avec le curseur la fenêtre bouge, argh!
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message par Droopy »

Si tu as la Droopy Lib installée supprime la procedure

Code : Tout sélectionner

;/ Author : Franco / Example by Droopy 

Procedure WindowsMove(WindowID,State) 
  RemoveMenu_(GetSystemMenu_(WindowID,State),1,#MF_DISABLED|#MF_BYPOSITION) 
  DrawMenuBar_(WindowID) 
EndProcedure 


;/ Test 
#CheckBox=0 
Handle=OpenWindow(0,0,0,200,50,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"Move me ?") 
CreateGadgetList(WindowID(0)) 
CheckBoxGadget(#CheckBox,10, 10,250,20,"Checked = Moving Enabled") 
SetGadgetState(#CheckBox,#True) 

Repeat 
  Event=WaitWindowEvent() 
  If Event= #PB_Event_Gadget And EventGadgetID()=0 
    WindowsMove(Handle,GetGadgetState(0)) 
  EndIf 
Until Event=#PB_Event_CloseWindow
[/code]
Good07
Messages : 308
Inscription : ven. 23/avr./2004 18:08
Localisation : Hérault 34190 Laroque

Message par Good07 »

Bonjour.

Décidemment cette Droopy lib est une véritable mine d'or. :D

Génial !

A+
Avatar de l’utilisateur
Jacobus
Messages : 1559
Inscription : mar. 06/avr./2004 10:35
Contact :

Message par Jacobus »

:D , Merci c'est exactement ça.
Le topic de Denis n'est pourtant pas vieux, je n'y ai même pas songé alors que je l'avais lu.

La Droopy'lib est effectivement une mine d'or, et comme dans une mine il faut creuser pour trouver les pépites. Incontournable :wink:

Merci à vous...
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
Avatar de l’utilisateur
Jacobus
Messages : 1559
Inscription : mar. 06/avr./2004 10:35
Contact :

Message par Jacobus »

:( , Finalement ça revient au même que mon exemple de départ.
Le bloquage opère qu'un temps. En essayant de pointer la barre de titre avec le curseur et de bouger la fenêtre, on y arrive au bout de quelques essais. Dans l'absolu ça ira tout de même.
(mon process sollicite le cpu à 100% empêchant le rafraîchissement en cas de déplacement de la fenêtre)
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message par Droopy »

J'essaye d'intégrer les fonctions les plus demandées :D
Et les codes sont souvent issues de forums, donc vos codes :wink:
Avatar de l’utilisateur
Jacobus
Messages : 1559
Inscription : mar. 06/avr./2004 10:35
Contact :

Message par Jacobus »

Continue, c'est un excellent travail que tu fais! :)
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
Répondre