Page 1 sur 1

[resolu] Toujours au 1er plan ?

Publié : mar. 26/juin/2007 7:35
par Ar-S
Bonjour les copains,
La question du moment est, comment faire laisser une fenettre au 1er plan tout le temps. Que mon soft reste devant les autres fenettres (firefox et autre)

Je pense que la solution est simple mais je ne la trouve pas dans "rechercher" ni dans la doc.. :(

Merci à vous :)

Publié : mar. 26/juin/2007 8:03
par Anonyme
StickyWindow() ?

@++

Publié : mar. 26/juin/2007 8:07
par Kwai chang caine
Salut mon grand :)

Moi j'ai ça avec les API:

Code : Tout sélectionner

SetWindowPos_(WindowID(#XXX), -1, 0, 0, 0, 0, #SWP_NOSIZE)
ça

Code : Tout sélectionner

; Auteur : Le Soldat Inconnu
; Version de PB : 3.90
;
; Explication du programme :
; Mettre la fenêtre toujours au premier plan (la fenêtre reste au dessus des autres fenêtres ouvertes)

If OpenWindow(0, 0, 0, 300, 300, "Plein écran", #PB_Window_ScreenCentered | #PB_Window_SystemMenu)
  
  SetWindowPos_(WindowID(0), -1, 0, 0, 0, 0, #SWP_NOSIZE | #SWP_NOMOVE)
  ; paramètres SetWindowPos_() pour mettre la fentre au premier plan
  ; resultat : handle de la fenetre
  ;- 1 : définis la position de la fenetre, une valeur négative donne une fenetre toujours devant les autres
  ; 230, 230 : position de la fenetre
  ; 0, 0 : nouvelle taille de la fenetre mais ne sert pas car j'ai mis l'option #SWP_NOSIZE qui interdit de redimmentionner la fenetre
  ; l'option #SWP_NOSIZE interdit de redimmentionner la fenetre avec la fonction SetWindowPos_() donc les paramètres de taille peuvent être mis à 0, 0

  Repeat
    Event = WaitWindowEvent()
  Until Event = #WM_CLOSE
  
EndIf
Voila voila en esperant que ça peux t'aider :wink:

Publié : mar. 26/juin/2007 8:41
par Jacobus
Je double le post de Cpl.Bator
(Désormais la simplicité existe)

Extrait de la doc:

Code : Tout sélectionner

Syntaxe

StickyWindow(#Fenetre, Etat) 
Description

Affiche la #Fenetre toujours au premier plan (même devant les autres programmes), même si elle n'est pas active. 

Le paramètre 'Etat' peut prendre l'une des valeurs suivantes: 
  1: la fenêtre sera toujours au premier plan.
  0: le fenêtre ne restera pas au premier plan si elle n'est pas active.

Publié : mar. 26/juin/2007 10:14
par Ar-S
Jacobus a écrit :Je double le post de Cpl.Bator
(Désormais la simplicité existe)

Extrait de la doc:

Code : Tout sélectionner

Syntaxe

StickyWindow(#Fenetre, Etat) 
Description

Affiche la #Fenetre toujours au premier plan (même devant les autres programmes), même si elle n'est pas active. 

Le paramètre 'Etat' peut prendre l'une des valeurs suivantes: 
  1: la fenêtre sera toujours au premier plan.
  0: le fenêtre ne restera pas au premier plan si elle n'est pas active.
Merci les gars, Sympa Kway pour ton pitit code mais le coup du StickyWindow(#Fenetre, Etat) !! J'adore :)

Merci Jacobus

Publié : mar. 26/juin/2007 11:56
par Kwai chang caine
De rien

C'est vrai que c'est bien mieux, et plus court et en plus compatible linux.
Le stiky, je l'avais oublié, c'etait dans un code de BROSSDEN que je l'avais vu pour la premiere fois 8O
Et je l'avais pas noté :oops:

J'en ai profité pour corriger cette erreur

Bonne continuation et a bientot :wink: