Cacher une fenetre

tomtom187 Messages postés 24 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 3 mai 2006 - 12 avril 2006 à 13:17
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 - 12 avril 2006 à 23:06
Bonjour,





je souhaite cacher une fenetre mais lorsque j'utilise la fonction hide(), celle-ci me cache un bouton au lieu de la fenetre.





Je travaille sous windows avec dev-C++ et la bibliothèque graphique FLTK.





Si vous savez pourquoi cela ne fonctionne pas, merci de m'en informer.

Voici le code de ma fonction:





void quit_cb3(Fl_Widget* _w3) {/


_w3 -> hide();


}

6 réponses

wxccxw Messages postés 755 Date d'inscription samedi 15 mai 2004 Statut Membre Dernière intervention 30 janvier 2011
12 avril 2006 à 14:25
ShowWindow(Handle,SW_HIDE);
0
meech Messages postés 209 Date d'inscription vendredi 11 avril 2003 Statut Membre Dernière intervention 14 août 2007
12 avril 2006 à 15:07
Salut,

Tiens... je ne connaissais pas cette librairie. Les API semblent relativement pratiques et assez portables.
Bref, je suis parvenu à créer un petit code pour afficher / cacher une fenêtre :

#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Button.H>


Fl_Window* xoDialogue;


void buton_callback(Fl_Widget* o, void*)
{
Fl_Button* b=(Fl_Button*)o;

if (!xoDialogue->visible())
{
xoDialogue->show();
b->label("Afficher");
}
else if (xoDialogue->visible() )
{
xoDialogue->hide();
b->label("Cacher");
}


b->redraw();
}


int main(int argc, char **argv)
{
Fl_Window *window = new Fl_Window(600,300);

Fl_Button *but = new Fl_Button(10,10,140,50,"Afficher");
xoDialogue = new Fl_Window(300,300);
but->callback(buton_callback);
window->end();
window->show(argc, argv);
return(Fl::run());
}

Peux-tu adresser la (les) portion(s) de code qui te posent problème ? A priori, il semblerait d'une petite confusion entre widgets à un moment donné.

En espérant t'avoir un peu aidé,
Ciao.
0
meech Messages postés 209 Date d'inscription vendredi 11 avril 2003 Statut Membre Dernière intervention 14 août 2007
12 avril 2006 à 15:09
wxccxw > ouh là, cela ressemble fort à du pur et dur Microsoft Windows API, sans la surcharge de la librairie FLTK...
0
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
12 avril 2006 à 17:50
ShowWindow est une fonction de l'API Windows et je dirais que le meilleur moyen de programmer en Windows est justement l'API.
___________________________________________
Les plus grands esprits trouvent toujours une solution
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
meech Messages postés 209 Date d'inscription vendredi 11 avril 2003 Statut Membre Dernière intervention 14 août 2007
12 avril 2006 à 21:16
Salut wxCCxw,



Tout à fait d'accord avec toi : on programme sous Windows avec les outils et les API Windows.

Seulement, ce genre de librairie me semble pratique pour rendre un code
un peu plus portable (wxWidgets, GTK+ ou, comme je viens de le
découvrir ici, FLTK).

De toute manière, ce type de librairie n'est qu'une surcouche qui, dans
le fond, ne fait rien d'autre qu'utiliser les API Windows et de fournir
un framework uniformisé pour différentes plateformes.



A plus tard.
0
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
12 avril 2006 à 23:06
Ouais exactement. wxWidgets rend la programmation plus rapide mais moi j'ai peur qu'en utilisant pas directement les fonctions de l'API, on ralentisse le programme car a la place qu'il utilise directement la fonction, il fasse tout un détoure, et ceci fait du temps au processeur.D'accord c'est minime mais quand on programme pour avoir la meilleur rapidité d'execution, évité les CALL (algo assembler) inutile est essentiel.
___________________________________________
Les plus grands esprits trouvent toujours une solution
0
Rejoignez-nous