Accueil > Forum > > > > Refaire MessageBox : problème de blocage
Refaire MessageBox : problème de blocage
mardi 31 janvier 2006 à 20:59:15 |
Refaire MessageBox : problème de blocage

Killan
|
Bonjour,
Le but :
====================================
Je crée actuellement un application graphique (DirectX) et donc je ne peu pas utiliser les "control" des forms, j'ai donc décidé de les refaire dans l'optique graphique par moi même de A à Z.
J'ai refait les formulaires et les boutons, et maintenant j'attaque les MessageBox et j'aimerais arriver à appeller l'objet et recevoir la reponse en retour comme la MessageBox existante (schéma : rep = messagebox(texte, boutonflags);).
Le contexte :
====================================
une boucle principale qui appelle la méthode de rendu (pour simplifier), celle ci appelle ces objets contenu pour s'afficher etc.
Je capte les événements et doncsi je clic surun bouton et que je veu poser une question je veu donc appeller une MessageBox (toujours de ma conception)
Ok elle s'affiche et je peu gérer les événements relatif aux boutons de cette MessageBox ainsi que la fermer une fois un bouton cliqué.
Questions et problème :
====================================
La question que je me pose est : la boucle principale qui appelle les méthodes de rendu sera t elle bloqué si dans la fonction appellée par un événement j'y met un code bloquant (attente de la reponse de la messagebox) ?
Si le code est bloquant, ce que j'imagine vu que tous codes revient à une lecture linéaire, comment pourrais-je faire pour avoir d'un coté mon rendu en boucle et à coté un appelle bloquant pour attendre la reponse de la messagebox ? cet appel ayant été fait lors d'un événement.
Si besoin de precisions, demandez :)
Solutions qui pourrait aller mais ne correspond pas à mon but :
========================================================================
Au lieu d'attendre la reponse, je dis à la messagebox d'appeller une fonction X lorsqu'elle à le resultat (ajout d'une méthode sur la pile d'un événement)
Mais ça divise mon code en 2, une fonction qui appelle et une fonction appellée par événement qui termine l'opération :s
Si il n'y a pas moyen de faire mieu je prendrais cette unique solution là, mais elle ne me semble pas optimale.
Merci à vous,
|
|
mercredi 1 février 2006 à 02:32:01 |
Re : Refaire MessageBox : problème de blocage

Lutinore
|
Salut,
Si tu as une fonction bloquante le mieux c'est d'utiliser un second thread.
Tu as refait les contrôles "from scratch" !? Avec DirectDraw ( obsolète ) on peut utiliser les dialogs même en mode FULLSCREEN EXCLUSIVE, en tout cas c'était comme ça avec DirectX 9.0b, dans le SDK 9.0b y'a un exemple qui s'appelle "FullScreenDialog". Je connais pas Direct3D mais il me semble que les programmeurs en C++ utilise l'API DXUT qui fournit des contrôles entièrement codés avec Direct3D, en code managé et dans DirectX 9.0c ( Décembre 2005 ) je crois que cette API est implémentée sous le nom "Sample Framework" y'a un exemple dénommé "CustomUI" et le code source du "Sample Framework" se trouve dans "Samples\Managed\Common". J'ai pas testé tout ça, donc à toi de voir..
|
|
mercredi 1 février 2006 à 09:34:35 |
Re : Refaire MessageBox : problème de blocage

MorpionMx
|
Je comprends qu'il reprenne a partir de 0, pas tres intuitif de suivre le code du Sample Framework :/
Mx MVP C#
|
|
mercredi 1 février 2006 à 09:49:06 |
Re : Refaire MessageBox : problème de blocage

Lutinore
|
Ah oui j'ai regardé un peu, c'est pas simple..
Mx, as tu testé DirectX10, qu'en penses tu, y'a beaucoup de changements !?
J'ai pas encore testé, et je crois que je ne peux pas avec XP de toute façon.
|
|
mercredi 1 février 2006 à 09:55:06 |
Re : Refaire MessageBox : problème de blocage

MorpionMx
|
Je peux pas dire que j'ai testé, j'ai juste regardé vite fait. (je suis completement debutant en Dx : Creation de device, affichage de text et d'une forme simple  ) Le point positif : juste un seul Assembly a utiliser. Sinon, j'ai rencontré quelques noms de classes changées (Caps devient Capabilities, ...), ce qui force a devoir modifier du code si qqun veut migrer son appli. Par contre, j'ai reussi a le faire tourner sous xp (sans rien faire de special). Peut-etre parce que c'etait simplement une fenetre sans rien dedans ^^.
Mx MVP C#
|
|
mercredi 1 février 2006 à 10:06:27 |
Re : Refaire MessageBox : problème de blocage

Lutinore
|
C'est bon à savoir, je vais tester ça dès que j'aurais un peu de temps..
|
|
mercredi 1 février 2006 à 21:18:07 |
Re : Refaire MessageBox : problème de blocage

Killan
|
Salut salut,
alors pour vous répondre, vu que je vise un aspect totalement modifiable graphiquement, je ne vais donc pas utiliser les samples UI de crosoft.
de plus le framework construit represente pour moi de grande barière, car on est confiné dans les possibilités du framework. alors j'ai repris un cran plus loin : le niveau 0 de Directx lol :)
concernant DX10, je me suis pas renseigné, j'étais meme pas au courant. Et puis bon avec la 9c c'est suffisant pour etre largement compatible un certain temps, c'est pour ça que je travail toujours avec des versions non-dernier cri.
question c'est quoi "from scratch" ? je ne connais pas le terme
concernant les solutions du problème : j'ai une possibilité en +
avec l'idée d'un thread donc, refaire une 2eme boucle graphique affichant la boite par dessus le dernier rendu en mémoire (evidemment je resume) ça permet d'avoir le meme affichage + les evenement en étant bloquant.
Je vais essayé ça et je viendrais rapporter le resultat, pour les intéressez contactez moi pour voir le projet :)
merci à vous,
Killan
|
|
mercredi 1 février 2006 à 22:01:54 |
Re : Refaire MessageBox : problème de blocage

coq
|
Salut,
"from scratch" est à interpreter dans le sens "en partant de zéro", càd recoder les contrôles de A à Z :-)
/* coq MVP Visual C# */
|
|
mercredi 1 février 2006 à 22:04:31 |
Re : Refaire MessageBox : problème de blocage

Killan
|
merci Coq, on en apprend tout les jours :)
et oui je recommence à zéro, en utilisant un systeme d'event etc
|
|
Cette discussion est classée dans : fonction, appelle, événement, messagebox, reponse
Répondre à ce message
Sujets en rapport avec ce message
événement ou pas? [ par Kbitnik ]
salut, est-ce que l'instruction Form2.pictureBox3.Location = new Point(260,80); fait l'objet d'un événement ??si oui comment s'appelle-t'il ??je pen
Code behind [ par fdouieb ]
Bonjour Je possède une WebForm. Au niveau de la partie client (dans le code HTML) j'ai une fonction C# qui suivant certaine valeur doit faire appelle
sortir d'une fonction [ par emmanuel9 ]
Bonjour, Quelqun connaitre t'il par hazard le moyen de quitte une fonction sur commande ? mettons j'ai void chat(){a = 1 ; b = 2 ; c = 3 ; // et je ve
Charger un webform a partir d'une dll [ par daevon ]
Bonjour,J'ai deja posé mon probleme dans la partie dotnet mais vu le peu de reactivité et le peu de temps que je dispose maintenant je reposte ici, av
[visual c#]bouton dans un datagrid [ par engelho ]
bonjour,J'utilise un datagrid pour affucher des données tirées d'une bd.Dans mon datagrid, j'ai ajouter une colonne composées de bouton. J'ai créé une
javascript dans fonction c# [ par Thanos_the_yopper ]
je fais un site en asp.net/c#je voudrais, à partir d'une fonction c#, lancer une pop-up javascript avec un message et une confirmation oui/non, puis r
Pocketpc [ par neopub ]
Bonjour,j'aimerai developper sous PPC (onboard), mais pas evident de trouver les fonction disponible en C#.Actuelement j'utilise PocketC, mais je trou
fonction aleatoire [ par FaustVII ]
je debute dans la programmation en c#je souhaiterai obtenir un nombre aleatoire sur une plage determiner.si quelqu un pouvais m expliquer comment fair
[C#] Lien HyperTexte dans un MessageBox [ par jeffwow ]
J'aimerais mettre un lien hyper texte du style mailto dans un MessageBox. Quelqu'un sait comment s'y prendre?Jeff
[C# & ASP.NET]Ajouter != listItem a une ddl en fonction d'une autre ddl [ par ourladywar ]
Voilà j'ai deux dropDownList. La premiere (ddlOption) affiche des categories. En fonction de la categorie choisie, la deuxieme (ddlPayOff)deroule des
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PCTECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC par ROMELARD Fabrice
Speakers: Thierry Rapatout, Antoine Petit et Xavier Trebbia Cette session entre dans le cadre des RDV Décideurs des TechDays 2012, elle est liée à la consumérisation de l'IT et la mise en place du "DeskTop as a Service" dans de plus en ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|