cs_Omeya
Messages postés28Date d'inscriptiondimanche 4 mai 2003StatutMembreDernière intervention10 août 2006 27 nov. 2006 à 23:59
Merci, je l'avais complètement oublié lol! En fait, je n'avais pas remarqué que le WS_TABSTOP n'était pas spécifié dans ton code.
Je cherche aussi un moyen de changer la couleur du texte des boutons. Si par hasard tu pouvais donner un bout de code, ce serait très sympa :)
J'ai déjà un bout de code, perso, mais il est pas très propre. Je te le posterai demain soir si je peux tout en sachant que ta version pourrait être nettement meilleure.
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 27 nov. 2006 à 23:30
Salut,
Il suffit d'ajouter le style WS_TABSTOP au controle.
cs_Omeya
Messages postés28Date d'inscriptiondimanche 4 mai 2003StatutMembreDernière intervention10 août 2006 27 nov. 2006 à 13:42
Salut,
Comment fait-on pour passer d'un contrôle à un autre avec la touche TAB? Ca ne marche pas dans cette source :(
Sinon, très bonne source. Ca mérite un bon 10 :)
deck_bsd
Messages postés1243Date d'inscriptionjeudi 31 mars 2005StatutMembreDernière intervention 3 août 20162 11 avril 2006 à 19:40
RACPP ... tu est mon sauveur. j'ai chercher PARTOUT après un exemple claire pour crée une dialogbox SANS RESSOURCE. C'est source est une aide précieuse pour moi. Et continue a nier les ressource :D je suis de tous coeur avec toi. Me too je veu pas utiliser les ressources ( en mm temps j'ai pas le choix , elles bug, mais je suis pas mécontent).
Encore merci pour cette source.
cs_Xaviou
Messages postés154Date d'inscriptiondimanche 1 avril 2001StatutMembreDernière intervention 2 octobre 2009 13 janv. 2005 à 23:13
ça m'a l'air bien tout ça !...
c'est peut-être la solution pour mettre des 'resources' de style dialog dans une lib statique (car si mes souvenirs sont exacts, il n'est pas possible de placer des ressources proprement dites dans une telle librairie)
cs_Nebula
Messages postés787Date d'inscriptionsamedi 8 juin 2002StatutMembreDernière intervention 7 juin 20072 28 déc. 2004 à 01:42
Un seul mot : Génial !
MasterShadows
Messages postés268Date d'inscriptionlundi 1 mars 2004StatutMembreDernière intervention19 avril 201212 29 sept. 2004 à 12:29
Merci bien Magic_Nono et racpp , on va aller étudier tout ca et je réécrirais totelement le prog...
D'ici demain vous aurez la version du programme dont j'ai parlé pour vous faire une idée du soft que je prépare.
Allez @+
magic_Nono
Messages postés1878Date d'inscriptionjeudi 16 octobre 2003StatutMembreDernière intervention16 mars 2011 28 sept. 2004 à 16:59
alors, inscrit chaque controle dans une fenetre différentes, C bcp plus pratique...
Je met à jour MP sur le site ftp donné en lien ds la page de MétaProg
ça te donnera une idée de gestion d'onglets...
très facile à gérer et à modifier en étant totalement i ndépendantes les unes des autres...
++
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 28 sept. 2004 à 16:15
MasterShadows > Mon programme des dix onglets est assez long et complexe car il gère une base de données elle aussi complexe. Je vais très bienôt poster un source plus clair, simple et surtout focalisé sur la création d'onglets 100% API (sans ressources). En attendant, voici des sources sur les onglets dans une boite de dialogue créés avec l'éditeur de ressources (sans MFC):
http://www.cppfrance.com/code.aspx?ID=16835 http://www.cppfrance.com/code.aspx?ID=20182
MasterShadows
Messages postés268Date d'inscriptionlundi 1 mars 2004StatutMembreDernière intervention19 avril 201212 28 sept. 2004 à 13:08
racpp > Ton idée d'onglet a du bon, je dirais même qu'elle est excellente car cela me permettrait d'avoir plus de place pour le tracer de graphes.
Cependant, cela ne fais pas excessivement longtemps que je programme sans les MFC, il me faudrait donc que tu me donne le code source du programme de tes dix onglets pour avoir un exemple de codification des onglets.
Quand au code source je la posterais cette semaine.
Mais de toute façon, elle subira une refonte totale...
Allez @+
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 27 sept. 2004 à 15:47
MasterShadows > L'utilisation de beaucoup de boites de dialogues dans une application n'est pas toujours très pratique. Personnellement, dans un programme comme le tien, je préfère utiliser des onglets (Tab Control). Cela permet de supporter un grand nombre de contrôles (boutons, statics, edits, etc...) dans une même boite de dialogue. En cliquant sur l'onglet voulu (calculatrice, rapport, graph etc...) on montre les contrôles voulus et on cache les autres. J'avais fait une application contenant 10 onglets contenant chacun pas moins de 15 contrôles. Ca fonctionne sans le moindre problème. En attendant de voir ton code source, j'espère que la solution des onglets t'est convenable.
MasterShadows
Messages postés268Date d'inscriptionlundi 1 mars 2004StatutMembreDernière intervention19 avril 201212 27 sept. 2004 à 08:20
racpp >> Ben, en fait je suis en train d'écrire un programme qui permettrait à terme de tracer des fonctions polynomiales, des rendements et d'autres styles de courbes. Pour cela il me fallait créer une boite dialogue principale, puis une boite dialogue calculatrice, une boite dialogue de rapport, une bdd de graphe et d'autres dans ce style (6 boites de dialogue au total).
Cependant je les avait créer mais il m'était impossible de les mettre en WS_OVERLAPPEDWINDOW sinon bonjour les bugs, car j'aurais aimé faire comme les activations/désactivations de fenêtre (style vc++ 6).
Mais pour plus de clarté je posterais la source bien qu'elle ne soit (et de loin) pas finie, pour que tu vois ce que je voudrais
magic_Nono
Messages postés1878Date d'inscriptionjeudi 16 octobre 2003StatutMembreDernière intervention16 mars 2011 24 sept. 2004 à 15:16
j'ai posté un msg sur le forum il y a qq tps, le but est de faire un formulaire dynamique, je m'y colle depuis un certain tps, & vive le Petz
si qqn ve donner un coup de pouce...
++
Nono.
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 22 sept. 2004 à 18:11
Merci beaucoup chers amis,
Ca fait toujours plaisir d'entendre quelqu'un qui apprécie ce qu'on fait. Ca m'encourage à penser à d'autres trouvailles à partager.
A très bientot.
leprov
Messages postés1160Date d'inscriptionvendredi 23 juillet 2004StatutMembreDernière intervention21 octobre 201017 21 sept. 2004 à 20:38
bravo pr le code, tres instructif, 10/10 sans complexe, car meme si ce code est tres simple a comprendre, je savais pas comment faire ce genre de choses, et ca ferait presque un bon tuto.
c'est vrai que je suis d'accord que l'editeur de ressources te donne limpression de pas programmer et de faire completement autre chose, mais y'a quand meme parfois un gain de temps assez significatifs (contre une perte de qualité c'est vrai...moins de précisions ds le graphisme, meme si c'est pas forcément important, etc.....)
en tous les cas, tres pratique, alors je dis bravo et merci
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 20 sept. 2004 à 22:45
vecchio56 > Pour créer une boite de dialogue comme interface d'une application, il y'a deux façons. DialogBox() et DialogBoxIndirect(). DialogBox crée la boite selon les paramètres enregistrés dans l'EXE comme ressource. DialogBoxIndirect fait la même chose mais en cherchant ces paramètres dans une zone de la mémoire. Ce qui nous permet de définir les paramètres pendant l'exécution de l'application avant même l'affichage de la boite. Bref, grâce à cette méthode, on maitrise mieux notre boite. Entre une boite de dialogue et une fenêtre normale il y'a beaucoup de différences. Avec une boite de dialogue, on a juste besoin d'allouer un peu de mémoire pour la dialog template, définir les propriétés de la boite et enfin la lancer. Pour la fenêtre, c'est autre chose. Il faudra définir tous les membres de la classe. Regarde bien le source de monsieur Arnotic, il a dû définir des membres inutiles comme l'icone, le curseur, la couleur de fond, le nom de la classe etc... il a dû faire appel à des fonctions comme LoadIcon(), LoadCursor(), RegisterClassEx() ShowWindow() UpdateWindow(). Pour gérer les messages il a dû employer les fonctions LoadAccelerators(), GetMessage(), TranslateAccelerator(), TranslateMessage(), DispatchMessage(). C'est toujours ainsi avec les fenêtres normales. Alors qu'on n'a pas besoin de tout cela avec une boite de dialogue. Création simple et gestion des messages autonome. Si tu préfères utiliser l'éditeur de ressources c'est ton choix. Franchement, et je ne suis pas le seul à le penser, quand je travaille avec l'éditeur de ressources, j'ai l'impression d'être en train de faire autre chose que la programmation. C'est frustrant et limite beaucoup la maitrise de la programmation de l'application.
A+
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 20 sept. 2004 à 18:01
L'avantage des dialog est pourtant l'utilisation de l'éditeur des ressources... Sinon c'est quasiment pareil que de créer une fenêtre normale, à l'exception qu'on n'enregistre pas de classe...
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 20 sept. 2004 à 16:47
MasterShadows > Dans mon source, la boite de dialogue est le support principal de l'application. A partir de la procédure de cette boite principale, et de ses événements, tu peux créer autant d'autres boites que tu veux et les afficher à la fois. N'oublie surtout pas d'implémenter une procédure pour chacune d'elles afin de bien gérer les messages. Il faut rappeler aussi que la fonction DialogBoxIndirect() est bloquante. Le programme appelant attend que la boite soit fermée.
Tu peux donner d'autres précisions? Car je me demande à quoi peut servir d'afficher toutes les boites à la fois.
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 20 sept. 2004 à 10:10
oui désolé!
MasterShadows
Messages postés268Date d'inscriptionlundi 1 mars 2004StatutMembreDernière intervention19 avril 201212 20 sept. 2004 à 08:55
10 / 10 . Franchement bien.
Cependant, question : peut on programmer plusieurs boîtes de dialogue de ce type et les faire afficher en même temps ???
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 19 sept. 2004 à 21:03
vecchio56 > En tous cas merci pour le rappel. Je suis sûr que tu n'avais pas pris le temps de comparer les deux sources.
A+
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 19 sept. 2004 à 20:08
vecchio56 > Oui mais c'est pas du tout la même chose. La méthode utilisée est tout à fait différente. Monsieur Arnotic a fait appel à la fonction CreateWindowEx() pour créer une fenêtre normale ayant l'apparence d'une boite de dialogue. Ce qui présente quelques inconvénients. Déjà la présence de l'icone à côté du nom prouve que ce n'est pas une vraie boite de dialogue. Dans mon source, j'utilise la fonction DialogBoxIndirect() pour créer une vraie boite de dialogue, plus facile à réaliser et surtout plus souple dans son fonctionnement.
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 19 sept. 2004 à 18:02
28 nov. 2006 à 00:22
http://www.cppfrance.com/code.aspx?ID=27889
27 nov. 2006 à 23:59
Je cherche aussi un moyen de changer la couleur du texte des boutons. Si par hasard tu pouvais donner un bout de code, ce serait très sympa :)
J'ai déjà un bout de code, perso, mais il est pas très propre. Je te le posterai demain soir si je peux tout en sachant que ta version pourrait être nettement meilleure.
27 nov. 2006 à 23:30
Il suffit d'ajouter le style WS_TABSTOP au controle.
27 nov. 2006 à 13:42
Comment fait-on pour passer d'un contrôle à un autre avec la touche TAB? Ca ne marche pas dans cette source :(
Sinon, très bonne source. Ca mérite un bon 10 :)
11 avril 2006 à 19:40
Encore merci pour cette source.
13 janv. 2005 à 23:13
c'est peut-être la solution pour mettre des 'resources' de style dialog dans une lib statique (car si mes souvenirs sont exacts, il n'est pas possible de placer des ressources proprement dites dans une telle librairie)
28 déc. 2004 à 01:42
29 sept. 2004 à 12:29
D'ici demain vous aurez la version du programme dont j'ai parlé pour vous faire une idée du soft que je prépare.
Allez @+
28 sept. 2004 à 16:59
Je met à jour MP sur le site ftp donné en lien ds la page de MétaProg
ça te donnera une idée de gestion d'onglets...
très facile à gérer et à modifier en étant totalement i ndépendantes les unes des autres...
++
28 sept. 2004 à 16:15
http://www.cppfrance.com/code.aspx?ID=16835
http://www.cppfrance.com/code.aspx?ID=20182
28 sept. 2004 à 13:08
Cependant, cela ne fais pas excessivement longtemps que je programme sans les MFC, il me faudrait donc que tu me donne le code source du programme de tes dix onglets pour avoir un exemple de codification des onglets.
Quand au code source je la posterais cette semaine.
Mais de toute façon, elle subira une refonte totale...
Allez @+
27 sept. 2004 à 15:47
27 sept. 2004 à 08:20
Cependant je les avait créer mais il m'était impossible de les mettre en WS_OVERLAPPEDWINDOW sinon bonjour les bugs, car j'aurais aimé faire comme les activations/désactivations de fenêtre (style vc++ 6).
Mais pour plus de clarté je posterais la source bien qu'elle ne soit (et de loin) pas finie, pour que tu vois ce que je voudrais
24 sept. 2004 à 15:16
si qqn ve donner un coup de pouce...
++
Nono.
22 sept. 2004 à 18:11
Ca fait toujours plaisir d'entendre quelqu'un qui apprécie ce qu'on fait. Ca m'encourage à penser à d'autres trouvailles à partager.
A très bientot.
21 sept. 2004 à 20:38
c'est vrai que je suis d'accord que l'editeur de ressources te donne limpression de pas programmer et de faire completement autre chose, mais y'a quand meme parfois un gain de temps assez significatifs (contre une perte de qualité c'est vrai...moins de précisions ds le graphisme, meme si c'est pas forcément important, etc.....)
en tous les cas, tres pratique, alors je dis bravo et merci
20 sept. 2004 à 22:45
A+
20 sept. 2004 à 18:01
20 sept. 2004 à 16:47
Tu peux donner d'autres précisions? Car je me demande à quoi peut servir d'afficher toutes les boites à la fois.
20 sept. 2004 à 10:10
20 sept. 2004 à 08:55
Cependant, question : peut on programmer plusieurs boîtes de dialogue de ce type et les faire afficher en même temps ???
19 sept. 2004 à 21:03
A+
19 sept. 2004 à 20:08
19 sept. 2004 à 18:02
http://www.cppfrance.com/code.aspx?id=25149
19 sept. 2004 à 08:05