[R] Zone d'affichage premier plan

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Alexpgm
Niveau 2
Niveau 2
Messages : 25
Enregistré le : sam. 09 janv. 2010 23:40
Status : Hors ligne

[R] Zone d'affichage premier plan

#1

Message par Alexpgm »

Bonsoir tout le monde,

J'aurais besoin d'une zone d'affichage, je m'explique :

J'aimerais que lorsqu'une fonction est lancé, son nom s'inscrive en noir dans un carré blanc en haut à gauche de mon écran.

Car j'ai fais un programme utilisant plusieurs fonctions, et j'aimerais savoir a tout moment, quel fonction j'utilise.

Mais cette zone ne doit pas être une fenêtre, ma fenêtre active au moment du lancement de la fonction doit le rester.

J'espère avoir été clair et précis dans ce que je recherchais.

En gros, je voudrais savoir créer cette zone, son emplacement sur mon écran, et l'inscription a l'intérieure.

Merci d'avance.
Modifié en dernier par Alexpgm le dim. 10 janv. 2010 20:28, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Zone d'affichage premier plan

#2

Message par Tlem »

Il vous faut donc créer une seconde GUI avec les caractéristiques nécessaires à votre fonctionnement.

Ensuite il vous faudra modifier la gestion des événements graphique.
Tout dépend de votre mode de fonctionnement actuel.
Le mode OnEvent me semble un bon choix, sinon, si vous voulez continuer avec la boucle d'événement, alors vous devrez utiliser GUIGetMsg en mode avancé.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Alexpgm
Niveau 2
Niveau 2
Messages : 25
Enregistré le : sam. 09 janv. 2010 23:40
Status : Hors ligne

Re: [..] Zone d'affichage premier plan

#3

Message par Alexpgm »

Actuellement, mon programme n'a pas de GUI, tout est géré par des _Ispressed.

J'ai ma boucle While 1 principale avec mes 4 fonctions qui se lancent selon la touche pressée.

Chaque fonction est une autre boucle While 1, dont je sort avec une autre touche pour retourner à mon while 1 principale d'ou ensuite en pressant une autre touche, je lance une autre fonction.

C'est pour cela que j'aimerais avoir un cadre me disant ou je suis dans mon programme.

Je viens de lire toute les infos relative au GUI, et je crois que cela ne répond pas à ce que je recherche, mais j'ai trouvé en gros ce que je voudrais.

Dans l'image d'exemple d'un GUI, il y a un green label, c'est donc un label que je veux, mais sans la fenêtre principale du GUI.

Je veux juste un label blanc en haut a gauche de mon écran.

Est ce possible?

Merci d'avance.
Avatar du membre
ayuckers
Niveau 4
Niveau 4
Messages : 77
Enregistré le : mer. 28 oct. 2009 14:15
Localisation : Drome
Status : Hors ligne

Re: [..] Zone d'affichage premier plan

#4

Message par ayuckers »

bonjour, Alexpgm

est ce que un ToolTip pourrait faire l'affaire ?

Voici un autre exemple, mais comme l'a dit Tlem il te faudra une autre GUI :
(ESC pour sortire du programme)
► Afficher le texte
Cette exemple te montre comment masquer le contour de la fenetre pour ne faire apparaitre que ton Label.
Dans mon exemple j'ai mis un input pour que ce soit plus parlant.
Modifié en dernier par ayuckers le dim. 10 janv. 2010 16:37, modifié 1 fois.
Alexpgm
Niveau 2
Niveau 2
Messages : 25
Enregistré le : sam. 09 janv. 2010 23:40
Status : Hors ligne

Re: [..] Zone d'affichage premier plan

#5

Message par Alexpgm »

Salut,

Merci pour ta réponse, mais c'est pas exactement ça :

Niveau affichage, sa me suffirais, mais le problème c'est que la fenêtre est active au 1er plan, moi je veux qu'elle soit au premier plan, mais qu'elle ne soit pas active, en gros comme dans Windows 98 si je me souvient bien, le gestionnaire de tache était, une fois lancé restait au premier plan, et on pouvais écrire dans un document Word.

En gros si on considère une fenêtre Firefox ouverte par exemple, je veux que ce label soit :
- en haut a gauche -> je veux gérer sa position sur mon écran en gros ;
- de font Blanc, et d'écriture noire ;
- Label visible, mais possibilité d'écrire dans Firefox -> en gros juste un affichage mais qui ne peux pas être sélectionné.

Je veux juste que ce label soit visible, je n'ai pas besoin de pouvoir interagir avec, il me sert juste d'afficheur.

Merci d'avance.
Avatar du membre
ayuckers
Niveau 4
Niveau 4
Messages : 77
Enregistré le : mer. 28 oct. 2009 14:15
Localisation : Drome
Status : Hors ligne

Re: [..] Zone d'affichage premier plan

#6

Message par ayuckers »

tu peut le faire avec la fonction WinSetOnTop

j'ai edité mon exemple maintenant sa reste affiché au premier plan :D
Alexpgm
Niveau 2
Niveau 2
Messages : 25
Enregistré le : sam. 09 janv. 2010 23:40
Status : Hors ligne

Re: [..] Zone d'affichage premier plan

#7

Message par Alexpgm »

C'est tout simplement parfait,

Juste deux chose en plus, si tu savais me guider, sa m'éviterais de chercher encore,

Donc encore deux choses qui seraient classes :

- Enlever le cadre du label
- Configurer moi même la position du label sur l'écran, actuellement il s'affiche en plein centre.

Merci d'avance.

Edit : Apparemment Avec WinMove c'est possible, je suis en train d'essayer...
Edit2: J'ai réussi à la déplacer ou je voulais. Sais tu comment faire pour enlever le cadre au label?
Avatar du membre
ayuckers
Niveau 4
Niveau 4
Messages : 77
Enregistré le : mer. 28 oct. 2009 14:15
Localisation : Drome
Status : Hors ligne

Re: [R] Zone d'affichage premier plan

#8

Message par ayuckers »

Voici un nouvel exemple qui devrait correspondre a ce que tu veut
peut etre un peut plus complexe mais j'ai essayer de commenter au maximum

Dans cette exemple je n'utilise pas de Label mais je dessine du texte dirrectement dans la fenetre
pour faire cela il faut utiliser les fonction graphique de GDIplus
J'ai donc crée une fonction _DiplayString() qui permet d'afficher du texte

Bon bidouillage :)
► Afficher le texte
je pense que tout ce ci peut certainement etre bien amelioré...
Alexpgm
Niveau 2
Niveau 2
Messages : 25
Enregistré le : sam. 09 janv. 2010 23:40
Status : Hors ligne

Re: [..] Zone d'affichage premier plan

#9

Message par Alexpgm »

Bonsoir,

Je n'ai pas su faire fonctionner ton code, car il y aurait apparemment une erreur :
J'ai le message suivant lors de la vérification...

ERROR: _GDIPlus_BrushSetSolidColor(): undefined function

J'ai regardé dans le fichier d'aide, et je n'ai pas de fonction _GDIPlus_BruchSetSolidColor()
J'ai seulement BrushClone, CreateSolid, Dispose, Get Type.

J'aimerais quand même essayer ton idée, car je pense que c'est aussi une bonne réponse a ce que j'ai besoin...

Merci d'avance.
Avatar du membre
ayuckers
Niveau 4
Niveau 4
Messages : 77
Enregistré le : mer. 28 oct. 2009 14:15
Localisation : Drome
Status : Hors ligne

Re: [R] Zone d'affichage premier plan

#10

Message par ayuckers »

sa doit etre par ce que j'ai mis la derniére version de Autoit >> AutoIt v3.3.2.0 , je ne voit que sa.
verifi si tu a bien cette version.
j'ai tout de meme fait une verification de mon code une erreur dans la copier coller peut toujours arriver mais la tout fonctionne correctement

edit : j'ai utiliser uniquement des fonction que j'ai trouvé dans l'aide
(pour le premiere exemple qui et plus simple je n'ai pas reussi a enlever le cadre noire
c'est pour sa que j'ai utiliser GDIplus dans mon second exemple)
Alexpgm
Niveau 2
Niveau 2
Messages : 25
Enregistré le : sam. 09 janv. 2010 23:40
Status : Hors ligne

Re: [R] Zone d'affichage premier plan

#11

Message par Alexpgm »

Oui, c'etait ça, j'ai réinstallé la derniere version, plus d'erreurs.

C'est bien la bonne solution, Merci.
Répondre