[resolu] Toujours au 1er plan ?

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

[resolu] Toujours au 1er plan ?

Message 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 :)
Dernière modification par Ar-S le mar. 10/juil./2007 11:32, modifié 1 fois.
Anonyme

Message par Anonyme »

StickyWindow() ?

@++
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message 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:
Avatar de l’utilisateur
Jacobus
Messages : 1559
Inscription : mar. 06/avr./2004 10:35
Contact :

Message 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.
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
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Message 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
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message 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:
Répondre