J'ai une question concernant le design général pour un nouveau et long
projet.
Comment faites-vous pour stocker les options générales d'un programme ? Par
exemple, les options données par la ligne de commande, ou le Handle de la
fenêtre principale (sous Windows), ou l'objet sélectionné en ce moment (dans
le cas d'un programme qui présenterait une telle fonctionnalité), etc...
Vous m'avez compris :) J'aimerais savoir s'il y a un pattern destiné à celà
: garder les valeurs accessibles par tout le code... Est-ce que les
variables globales sont utilisables dans ce cas-là ?
J'ai utilisé un singleton "GeneralManager" dans mon projet précédent, avec
une paire de Get/Set pour chaque variable, mais je trouve cela vraiment très
lours à l'utilisation (GeneralManager::Instance()->GetBlah() à chaque
fois...).
Si si. Depuis assez longtemps déjà (Win NT 4, si mes souvenirs sont bons; mais cela n'est vraiment utilisable que depuis Windows 2000 toujours si ma mémoire ne me joue pas des tours).
Comment y a t'on acces? (Vu que des gens qui utilisent Windows n'ont pas l'air d'en connaitre l'existance, ca doit pas etre disponible d'office).
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
Si si. Depuis assez longtemps déjà (Win NT 4, si
mes souvenirs sont bons; mais cela n'est vraiment
utilisable que depuis Windows 2000 toujours si ma
mémoire ne me joue pas des tours).
Comment y a t'on acces? (Vu que des gens qui utilisent Windows n'ont
pas l'air d'en connaitre l'existance, ca doit pas etre disponible
d'office).
A+
--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Si si. Depuis assez longtemps déjà (Win NT 4, si mes souvenirs sont bons; mais cela n'est vraiment utilisable que depuis Windows 2000 toujours si ma mémoire ne me joue pas des tours).
Comment y a t'on acces? (Vu que des gens qui utilisent Windows n'ont pas l'air d'en connaitre l'existance, ca doit pas etre disponible d'office).
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
kanze
"Christophe Lephay" wrote in message news:<bg8pcd$n3i$...
"Jean-Marc Bourguet" a écrit dans le message de news:
"Christophe Lephay" writes:
C'est Windows qui est foutu comme ça : quand tu lances ton application, elle doit enregistrer sa classe de fenêtre (avec, notemment, la fonction chargée de réceptionner puis dispatcher les messages).
Qu'est-ce qui t'empeche d'avoir plusieurs fenetres de la meme classe?
Il me semble bien (j'y mettrais ma main gauche à couper) qu'à chaque application est associée une et une seule fenêtre principale. Notemment, on ne peut pas avoir plusieurs fenêtres avec barre des menus.
C'est peut-être une limitation de VC++/MFC (bien que je le doute), mais ce n'est pas un problème pour Windows -- j'ai déjà écrit des applications sous Windows avec plusieurs fenêtres avec barre de menu. En Java, mais même Java ne peut pas faire ce que le système interdit.
De même, si plusieurs fenêtres peuvent envoyer des messages au système, une seule peut recevoir ceux que le système envoie à l'application.
En somme, si je comprends bien, ce n'est pas tellement une fenêtre principale, mais un espèce d'interface au système de fenêtrage qui doit être unique.
Qu'est-ce qui se passe si un seul programme gère des fenêtres sur plusieurs écrans, voire sur plusieurs machines, différents ?
-- James Kanze GABI Software mailto: Conseils en informatique orientée objet/ http://www.gabi-soft.fr Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
"Christophe Lephay" <christophe-lephay@wanadoo.fr> wrote in message
news:<bg8pcd$n3i$1@news-reader3.wanadoo.fr>...
"Jean-Marc Bourguet" <jm@bourguet.org> a écrit dans le message de
news:pxbk7a0xcr5.fsf@news.bourguet.org...
C'est Windows qui est foutu comme ça : quand tu lances ton
application, elle doit enregistrer sa classe de fenêtre (avec,
notemment, la fonction chargée de réceptionner puis dispatcher les
messages).
Qu'est-ce qui t'empeche d'avoir plusieurs fenetres de la meme
classe?
Il me semble bien (j'y mettrais ma main gauche à couper) qu'à chaque
application est associée une et une seule fenêtre
principale. Notemment, on ne peut pas avoir plusieurs fenêtres avec
barre des menus.
C'est peut-être une limitation de VC++/MFC (bien que je le doute), mais
ce n'est pas un problème pour Windows -- j'ai déjà écrit des
applications sous Windows avec plusieurs fenêtres avec barre de menu. En
Java, mais même Java ne peut pas faire ce que le système interdit.
De même, si plusieurs fenêtres peuvent envoyer des messages au
système, une seule peut recevoir ceux que le système envoie à
l'application.
En somme, si je comprends bien, ce n'est pas tellement une fenêtre
principale, mais un espèce d'interface au système de fenêtrage qui doit
être unique.
Qu'est-ce qui se passe si un seul programme gère des fenêtres sur
plusieurs écrans, voire sur plusieurs machines, différents ?
--
James Kanze GABI Software mailto:kanze@gabi-soft.fr
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
"Christophe Lephay" wrote in message news:<bg8pcd$n3i$...
"Jean-Marc Bourguet" a écrit dans le message de news:
"Christophe Lephay" writes:
C'est Windows qui est foutu comme ça : quand tu lances ton application, elle doit enregistrer sa classe de fenêtre (avec, notemment, la fonction chargée de réceptionner puis dispatcher les messages).
Qu'est-ce qui t'empeche d'avoir plusieurs fenetres de la meme classe?
Il me semble bien (j'y mettrais ma main gauche à couper) qu'à chaque application est associée une et une seule fenêtre principale. Notemment, on ne peut pas avoir plusieurs fenêtres avec barre des menus.
C'est peut-être une limitation de VC++/MFC (bien que je le doute), mais ce n'est pas un problème pour Windows -- j'ai déjà écrit des applications sous Windows avec plusieurs fenêtres avec barre de menu. En Java, mais même Java ne peut pas faire ce que le système interdit.
De même, si plusieurs fenêtres peuvent envoyer des messages au système, une seule peut recevoir ceux que le système envoie à l'application.
En somme, si je comprends bien, ce n'est pas tellement une fenêtre principale, mais un espèce d'interface au système de fenêtrage qui doit être unique.
Qu'est-ce qui se passe si un seul programme gère des fenêtres sur plusieurs écrans, voire sur plusieurs machines, différents ?
-- James Kanze GABI Software mailto: Conseils en informatique orientée objet/ http://www.gabi-soft.fr Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
Franck Guillaud
Jean-Marc Bourguet wrote:
"David Brabant" writes:
"Fabien LE LEZ" wrote
Windows n'a toujours pas de bureaux multiples?
Pas à ma connaissance.
Si si. Depuis assez longtemps déjà (Win NT 4, si mes souvenirs sont bons; mais cela n'est vraiment utilisable que depuis Windows 2000 toujours si ma mémoire ne me joue pas des tours).
Comment y a t'on acces? (Vu que des gens qui utilisent Windows n'ont pas l'air d'en connaitre l'existance, ca doit pas etre disponible d'office).
La mémoire de Fabien doit lui jouer des tours. :-)
Si bureaux multiples existent en natif , ce n'est qu'à partir de XP.
Sinon, on trouve de petits utilitaires pour gérer ça mais malheureusement les applications existantes s'y intègrent assez mal. Du coup ça devient plus désagréable de les utiliser que de s'en passer.
Si si. Depuis assez longtemps déjà (Win NT 4, si
mes souvenirs sont bons; mais cela n'est vraiment
utilisable que depuis Windows 2000 toujours si ma
mémoire ne me joue pas des tours).
Comment y a t'on acces? (Vu que des gens qui utilisent Windows n'ont
pas l'air d'en connaitre l'existance, ca doit pas etre disponible
d'office).
La mémoire de Fabien doit lui jouer des tours. :-)
Si bureaux multiples existent en natif , ce n'est qu'à partir de XP.
Sinon, on trouve de petits utilitaires pour gérer ça mais malheureusement
les applications existantes s'y intègrent assez mal. Du coup ça devient plus
désagréable de les utiliser que de s'en passer.
Si si. Depuis assez longtemps déjà (Win NT 4, si mes souvenirs sont bons; mais cela n'est vraiment utilisable que depuis Windows 2000 toujours si ma mémoire ne me joue pas des tours).
Comment y a t'on acces? (Vu que des gens qui utilisent Windows n'ont pas l'air d'en connaitre l'existance, ca doit pas etre disponible d'office).
La mémoire de Fabien doit lui jouer des tours. :-)
Si bureaux multiples existent en natif , ce n'est qu'à partir de XP.
Sinon, on trouve de petits utilitaires pour gérer ça mais malheureusement les applications existantes s'y intègrent assez mal. Du coup ça devient plus désagréable de les utiliser que de s'en passer.
Franck.
A+
kanze
Fabien LE LEZ wrote in message news:...
Si tu veux avoir une fenêtre par document sous un logiciel style Word par exemple, il suffit de lancer plusieurs instances.
Qui parle d'une fenêtre par document. Je veux plusieurs fenêtres sur le même document. Éventuellement sur des écrans différents. Eventuellement même sur des machines différentes. (Si on voulait faire du pair programming, c'est bien comme ça qu'on procédera, non ? J'ouvrais une fenêtre sur le document que je suis en train d'éditer sur la machine de mon collègue, avec, par exemple, la commande make-frame-on-display en emacs.)
Si par contre tu parles d'une interface avec une fenêtre pour la barre d'icônes, une fenêtre par barre d'outils, et une fenêtre par document, avec le tout qui se mélange avec les fenêtres d'autres applications, non merci, pas pour moi.
Il ne faut pas exagérer. Une chose pareille doit être possible, mais je n'ai pas de problème
-- James Kanze GABI Software mailto: Conseils en informatique orientée objet/ http://www.gabi-soft.fr Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
Fabien LE LEZ <gramster@gramster.com> wrote in message
news:<k1ofiv8c3kvsoduf9vnq4jh0p9ucllmia3@4ax.com>...
Si tu veux avoir une fenêtre par document sous un logiciel style Word
par exemple, il suffit de lancer plusieurs instances.
Qui parle d'une fenêtre par document. Je veux plusieurs fenêtres sur le
même document. Éventuellement sur des écrans différents. Eventuellement
même sur des machines différentes. (Si on voulait faire du pair
programming, c'est bien comme ça qu'on procédera, non ? J'ouvrais une
fenêtre sur le document que je suis en train d'éditer sur la machine de
mon collègue, avec, par exemple, la commande make-frame-on-display en
emacs.)
Si par contre tu parles d'une interface avec une fenêtre pour la barre
d'icônes, une fenêtre par barre d'outils, et une fenêtre par document,
avec le tout qui se mélange avec les fenêtres d'autres applications,
non merci, pas pour moi.
Il ne faut pas exagérer. Une chose pareille doit être possible, mais je
n'ai pas de problème
--
James Kanze GABI Software mailto:kanze@gabi-soft.fr
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
Si tu veux avoir une fenêtre par document sous un logiciel style Word par exemple, il suffit de lancer plusieurs instances.
Qui parle d'une fenêtre par document. Je veux plusieurs fenêtres sur le même document. Éventuellement sur des écrans différents. Eventuellement même sur des machines différentes. (Si on voulait faire du pair programming, c'est bien comme ça qu'on procédera, non ? J'ouvrais une fenêtre sur le document que je suis en train d'éditer sur la machine de mon collègue, avec, par exemple, la commande make-frame-on-display en emacs.)
Si par contre tu parles d'une interface avec une fenêtre pour la barre d'icônes, une fenêtre par barre d'outils, et une fenêtre par document, avec le tout qui se mélange avec les fenêtres d'autres applications, non merci, pas pour moi.
Il ne faut pas exagérer. Une chose pareille doit être possible, mais je n'ai pas de problème
-- James Kanze GABI Software mailto: Conseils en informatique orientée objet/ http://www.gabi-soft.fr Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
David Brabant
"Franck Guillaud" wrote
Si bureaux multiples existent en natif , ce n'est qu'à partir de XP.
En fait, après un brin de recherche, les premières APIs sont apparues avec Windows NT 3.51.
Voici un exemple de ces utilitaires qui permettent de les exploiter : http://www.netexec.de/
-- David
"Franck Guillaud" <f@nospam.org> wrote
Si bureaux multiples existent en natif , ce n'est qu'à partir de XP.
En fait, après un brin de recherche, les premières APIs
sont apparues avec Windows NT 3.51.
Voici un exemple de ces utilitaires qui permettent de
les exploiter : http://www.netexec.de/
Si bureaux multiples existent en natif , ce n'est qu'à partir de XP.
En fait, après un brin de recherche, les premières APIs sont apparues avec Windows NT 3.51.
Voici un exemple de ces utilitaires qui permettent de les exploiter : http://www.netexec.de/
-- David
Alain Naigeon
"Fabien LE LEZ" a écrit dans le message news:
On 30 Jul 2003 03:46:19 -0700, wrote:
En général, si (sous Windows du moins)... mais rien ne l'oblige à être visible.
Alors, à quoi est-ce qu'il sert ?
Entre autres, à recevoir les messages généraux envoyés à l'application (du style, "Windows est en cours de fermeture, faudrait p'têt' penser à terminer l'application avant que je tue le processus"). Sous Windows, le terme "fenêtre" désigne une entité capable de recevoir des messages, et qui _peut_ avoir une représentation graphique.
Voilà, je pensais répondre, mais c'est fait ! AMHA c'est juste une question de vocabulaire, si on appelait ça "application procedure" ou n'importe quoi d'autre que "window", il n'y aurait plus de paradoxe. Je me demande si James n'a pas été faussement naïf dans cette question ;-)
--
Français *==> "Musique renaissance" <==* English midi - facsimiles - ligatures - mensuration http://anaigeon.free.fr | http://www.medieval.org/emfaq/anaigeon/ Alain Naigeon - - Strasbourg, France
"Fabien LE LEZ" <gramster@gramster.com> a écrit dans le message news:
k1ofiv8c3kvsoduf9vnq4jh0p9ucllmia3@4ax.com...
On 30 Jul 2003 03:46:19 -0700, kanze@gabi-soft.fr wrote:
En général, si (sous Windows du moins)... mais rien ne l'oblige à être
visible.
Alors, à quoi est-ce qu'il sert ?
Entre autres, à recevoir les messages généraux envoyés à l'application
(du style, "Windows est en cours de fermeture, faudrait p'têt' penser
à terminer l'application avant que je tue le processus").
Sous Windows, le terme "fenêtre" désigne une entité capable de
recevoir des messages, et qui _peut_ avoir une représentation
graphique.
Voilà, je pensais répondre, mais c'est fait !
AMHA c'est juste une question de vocabulaire, si on
appelait ça "application procedure" ou n'importe
quoi d'autre que "window", il n'y aurait plus de
paradoxe. Je me demande si James n'a pas été
faussement naïf dans cette question ;-)
--
Français *==> "Musique renaissance" <==* English
midi - facsimiles - ligatures - mensuration
http://anaigeon.free.fr | http://www.medieval.org/emfaq/anaigeon/
Alain Naigeon - anaigeon@free.fr - Strasbourg, France
En général, si (sous Windows du moins)... mais rien ne l'oblige à être visible.
Alors, à quoi est-ce qu'il sert ?
Entre autres, à recevoir les messages généraux envoyés à l'application (du style, "Windows est en cours de fermeture, faudrait p'têt' penser à terminer l'application avant que je tue le processus"). Sous Windows, le terme "fenêtre" désigne une entité capable de recevoir des messages, et qui _peut_ avoir une représentation graphique.
Voilà, je pensais répondre, mais c'est fait ! AMHA c'est juste une question de vocabulaire, si on appelait ça "application procedure" ou n'importe quoi d'autre que "window", il n'y aurait plus de paradoxe. Je me demande si James n'a pas été faussement naïf dans cette question ;-)
--
Français *==> "Musique renaissance" <==* English midi - facsimiles - ligatures - mensuration http://anaigeon.free.fr | http://www.medieval.org/emfaq/anaigeon/ Alain Naigeon - - Strasbourg, France
Christophe Lephay
"Fabien LE LEZ" a écrit dans le message de news:
On Wed, 30 Jul 2003 18:07:35 +0200, "Christophe Lephay" wrote:
C'est pourtant bien pratique, surtout si tu as plusieurs écrans sur ton système.
Arf... T'en connais beaucoup, des systèmes qui ont plusieurs écrans ?
Ben déjà le mien ;)
Et franchement, c'est comme la souris optique : une fois qu'on y a gouté, on ne peut plus s'en passer. C'est bien mieux qu'une souris optique, en fait : tu gagnes *vraiment* en productivité (à relativiser selon le type d'application, bien entendu)...
Je te conseille d'essayer à l'occasion.
Chris
"Fabien LE LEZ" <gramster@gramster.com> a écrit dans le message de
news:t57hiv0545skkmavg9v5o9rhsflcv6l3br@4ax.com...
C'est pourtant bien pratique,
surtout si tu as plusieurs écrans sur ton système.
Arf... T'en connais beaucoup, des systèmes qui ont plusieurs écrans ?
Ben déjà le mien ;)
Et franchement, c'est comme la souris optique : une fois qu'on y a gouté, on
ne peut plus s'en passer. C'est bien mieux qu'une souris optique, en fait :
tu gagnes *vraiment* en productivité (à relativiser selon le type
d'application, bien entendu)...
On Wed, 30 Jul 2003 18:07:35 +0200, "Christophe Lephay" wrote:
C'est pourtant bien pratique, surtout si tu as plusieurs écrans sur ton système.
Arf... T'en connais beaucoup, des systèmes qui ont plusieurs écrans ?
Ben déjà le mien ;)
Et franchement, c'est comme la souris optique : une fois qu'on y a gouté, on ne peut plus s'en passer. C'est bien mieux qu'une souris optique, en fait : tu gagnes *vraiment* en productivité (à relativiser selon le type d'application, bien entendu)...
Je te conseille d'essayer à l'occasion.
Chris
Christophe Lephay
a écrit dans le message de news:
Qu'est-ce qui se passe si un seul programme gère des fenêtres sur plusieurs écrans,
Je ne suis pas certain de comprendre le problème...
voire sur plusieurs machines, différents ?
Windows n'autorise pas celà...
Chris
<kanze@gabi-soft.fr> a écrit dans le message de
news:d6652001.0307310017.11e5b755@posting.google.com...
Qu'est-ce qui se passe si un seul programme gère des fenêtres sur
plusieurs écrans,
Je ne suis pas certain de comprendre le problème...
Qu'est-ce qui se passe si un seul programme gère des fenêtres sur plusieurs écrans,
Je ne suis pas certain de comprendre le problème...
voire sur plusieurs machines, différents ?
Windows n'autorise pas celà...
Chris
Christophe Lephay
"Richard Delorme" a écrit dans le message de news:3f2904c3$0$9624$
a écrit dans le message de news:
Qu'est-ce qui se passe si un seul programme gère des fenêtres sur plusieurs écrans,
Je ne suis pas certain de comprendre le problème...
voire sur plusieurs machines, différents ?
Windows n'autorise pas celà...
Je crois que si :
http://members.chello.nl/~s.ferris/
Lol !
Ceci dit, on peut aussi se servir de Windows pour piloter la machine à café avec le bon logiciel et la bonne interface. Ce n'est pas pour autant que c'est Windows qui en offre la fonctionnalité.
Chris
"Richard Delorme" <abulmo@nospam.fr> a écrit dans le message de
news:3f2904c3$0$9624$7a628cd7@news.club-internet.fr...
<kanze@gabi-soft.fr> a écrit dans le message de
news:d6652001.0307310017.11e5b755@posting.google.com...
Qu'est-ce qui se passe si un seul programme gère des fenêtres sur
plusieurs écrans,
Je ne suis pas certain de comprendre le problème...
voire sur plusieurs machines, différents ?
Windows n'autorise pas celà...
Je crois que si :
http://members.chello.nl/~s.ferris/
Lol !
Ceci dit, on peut aussi se servir de Windows pour piloter la machine à café
avec le bon logiciel et la bonne interface. Ce n'est pas pour autant que
c'est Windows qui en offre la fonctionnalité.
"Richard Delorme" a écrit dans le message de news:3f2904c3$0$9624$
a écrit dans le message de news:
Qu'est-ce qui se passe si un seul programme gère des fenêtres sur plusieurs écrans,
Je ne suis pas certain de comprendre le problème...
voire sur plusieurs machines, différents ?
Windows n'autorise pas celà...
Je crois que si :
http://members.chello.nl/~s.ferris/
Lol !
Ceci dit, on peut aussi se servir de Windows pour piloter la machine à café avec le bon logiciel et la bonne interface. Ce n'est pas pour autant que c'est Windows qui en offre la fonctionnalité.
Chris
Luc Hermitte
"Christophe Lephay" wrote in news:bgb72p$mnk$:
Ceci dit, on peut aussi se servir de Windows pour piloter la machine à café avec le bon logiciel et la bonne interface. Ce n'est pas pour autant que c'est Windows qui en offre la fonctionnalité.
Piloter les machines à café ... c'est le boulot d'emacs ça, non ?
[On ne serait pas un peu HS ?]
-- Luc Hermitte <hermitte at free.fr> FAQ de <news:fr.comp.lang.c++> : <http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/> Dejanews : <http://groups.google.com/advanced_group_search>
"Christophe Lephay" <christophe-lephay@wanadoo.fr> wrote in
news:bgb72p$mnk$1@news-reader4.wanadoo.fr:
Ceci dit, on peut aussi se servir de Windows pour piloter la machine à
café avec le bon logiciel et la bonne interface. Ce n'est pas pour
autant que c'est Windows qui en offre la fonctionnalité.
Piloter les machines à café ... c'est le boulot d'emacs ça, non ?
[On ne serait pas un peu HS ?]
--
Luc Hermitte <hermitte at free.fr>
FAQ de <news:fr.comp.lang.c++> :
<http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/>
Dejanews : <http://groups.google.com/advanced_group_search>
Ceci dit, on peut aussi se servir de Windows pour piloter la machine à café avec le bon logiciel et la bonne interface. Ce n'est pas pour autant que c'est Windows qui en offre la fonctionnalité.
Piloter les machines à café ... c'est le boulot d'emacs ça, non ?
[On ne serait pas un peu HS ?]
-- Luc Hermitte <hermitte at free.fr> FAQ de <news:fr.comp.lang.c++> : <http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/> Dejanews : <http://groups.google.com/advanced_group_search>