OVH Cloud OVH Cloud

ComboBox avec couleur differente

18 réponses
Avatar
Simon
Bonjour a tous

Y a t-il une facons dans un comboBox de mettre exemple les 4 premiere item
en Rouge et les 4 seconde en Bleu (je parle du text ici)

Merci de votre aide !

10 réponses

1 2
Avatar
X
Bonsoir, non, la propriété foreColcor est pour tout la boîte hélas...

------
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"Simon" a écrit dans le message de news:

Bonjour a tous

Y a t-il une facons dans un comboBox de mettre exemple les 4 premiere item
en Rouge et les 4 seconde en Bleu (je parle du text ici)

Merci de votre aide !



Avatar
Jean-Marc
"Simon" a écrit dans le message de
news:
Bonjour a tous

Y a t-il une facons dans un comboBox de mettre exemple les 4 premiere


item
en Rouge et les 4 seconde en Bleu (je parle du text ici)




Bonjour,

Bien sur on peut, c'est même assez simple :-)

Il y a un bel exemple tout fait avec le code (très
simple à comprendre et très court) ici:
http://www.codeguru.com/vb/controls/vb_combobox/article.php/c2995/

On peut télécharger l'exemple (le projet vb complet) ici, en
bas de page:
http://www.codeguru.com/code/legacy/vb_combobox/2343_combo.zip


--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
riki
Simon a écrit :
Bonjour a tous

Y a t-il une facons dans un comboBox de mettre exemple les 4 premiere item
en Rouge et les 4 seconde en Bleu (je parle du text ici)

Merci de votre aide !




Bonjour,

Oui, via un appel aux api's windows, non via les contrôles standard.
Voir les sites :
http://vostock.cliranet.com/vb-rs232.php
http://grafikm.developpez.com/portcomm/
http://www.vbfrance.com/
http://support.microsoft.com/default.aspx?scid=kb;en-us;194922
http://fred.just.free.fr/francais/index.php?from=http://fred.just.free.fr/francais/Planet/Planet.html

Vous trouverez des exemples utiles.

Cordialement,

EG.
Avatar
X
Bonjour E.G,

Tu dis "Oui, via un appel aux api's windows, non via les contrôles
standard"
Donc en VB = NON; en langage système dans vb = OUI

Ah la c'est exactement ça, sauf que les zAPIs ce n'est absolument pas du VB,
c'est du "langage système" qui peut s'appeler depuis VB en cas de besoin
extrême (d'ailleurs utilisé en assembleur)...

De plus le code (qualifié de simple), est monstrueusement long juste pour
avoir une couleur il y a:
- Explication est en anglais...
- 200 lignes de code
- 2 feuilles (module + form)
- 15 APIs appelées
- 18 constantes
- 4 déclarations de type
- 5 fonctions
- 3 procédures

Sans omettre le code qu'il faudra sans doute rajouter, et avec lequel il
faudra en permanence jongler pour savoir à quel index on met quelle couleur
de la listes...

Et in fine, ça provoque des complications à l'empaquetage (mais ce n'est pas
le sujet ici), qui fait appel à des dll ou ocx très lourds (0,8 Mo souvent),
qui peuvent parfois être supprimés... les "OLE"...

Je doute que ce soit une bonne méthode d'apprentissage, et je mets au défi
l'utilisateur qui a posé la question d'expliquer l'utilité et l'interaction
de chaque API entre elles, il va donc faire un copier/coller sans autre
forme de procès...

C'est cher payé pour avoir un peu de couleur dans une liste, en un langage
qui n'est pas du VB majoritairement...
Mais bon, chacun voit midi à sa porte, du moment que comme tu le dis en
intro, ce n'est pas du VB, l'auteur de la question est désormais prévenu...

------
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"riki" a écrit dans le message de news:
dvr0qq$fr9$
Simon a écrit :
Bonjour a tous

Y a t-il une facons dans un comboBox de mettre exemple les 4 premiere
item en Rouge et les 4 seconde en Bleu (je parle du text ici)

Merci de votre aide !


Bonjour,

Oui, via un appel aux api's windows, non via les contrôles standard.
Voir les sites :
http://vostock.cliranet.com/vb-rs232.php
http://grafikm.developpez.com/portcomm/
http://www.vbfrance.com/
http://support.microsoft.com/default.aspx?scid=kb;en-us;194922
http://fred.just.free.fr/francais/index.php?from=http://fred.just.free.fr/francais/Planet/Planet.html

Vous trouverez des exemples utiles.

Cordialement,

EG.


Avatar
phil
"X" wrote in message news:
Bonjour E.G,

Tu dis "Oui, via un appel aux api's windows, non via les contrôles
standard"
Donc en VB = NON; en langage système dans vb = OUI



Langage système ?? Ce n'est pas une notion qui existe.
A la rigueur, on parle parfois de langage machine, mais
ici, je ne vous pas le rapport :-(

Ah la c'est exactement ça, sauf que les zAPIs ce n'est absolument pas du


VB,
c'est du "langage système" qui peut s'appeler depuis VB en cas de besoin
extrême (d'ailleurs utilisé en assembleur)...



VB est un langage de programmation, qui permet de construire
des fonctions appelant d'autres fonctions, etc. Et de fait, oui,
VB permet d'appeler des focntions de l'API windows. Et alors?

VB est un langage pour Windows, il est conçu pour être utilisé sur
un système donné (Windows). Il peut donc en utiliser les fonctions
de base. Il est vrai qu'on peut faire la même chose en C++, en Delphi,
ou en ce qu'on veut, pour autant que le langage permette d'appeler les
fonctions du système.

De plus le code (qualifié de simple), est monstrueusement long juste pour
avoir une couleur il y a:



Lol! On n'a pas la même notion de ce qui est "monstrueusement long" ...

- Explication est en anglais...



Oui, comme 80% des resources de programmation disponibles. Ceci dit,
une fois qu'on a vu que la méthode utilisait le subclassing, il
est très facile de se rediriger vers un site francophone traitant du
sujet, si besoin est.

- 200 lignes de code



Ce qui en fait un code extrémement concis.

- 2 feuilles (module + form)



Tout est dans le module, la forme c'est l'exemple
d'utilisation

- 15 APIs appelées
- 18 constantes
- 4 déclarations de type
- 5 fonctions
- 3 procédures



Oui et alors? Le moindre programme qui est plus qu'un exemple d'école
en comporte 100 fois plus. Le regroupement par modules et les constantes
nommées permettent justement de pouvoir faire ce genre de choses sans être
perdu. Le strict cloisonnement des variables, et une gestion saine de
la portée des variables fait que ce n'est pas un souci. Les Private et
les Public sont faites pour cela

Sans omettre le code qu'il faudra sans doute rajouter, et avec lequel il
faudra en permanence jongler pour savoir à quel index on met quelle


couleur
de la listes...



Non pas du tout, le code est tout bête et l'utilisation
particulièrement simple (une ligne):
Combo1.itemData(Combo1.NewIndex) = QBColor(iIndex)

Il n'y a aucune jonglerie ici. On pourrait mal imaginer plus
simple.

Et in fine, ça provoque des complications à l'empaquetage (mais ce n'est


pas
le sujet ici), qui fait appel à des dll ou ocx très lourds (0,8 Mo


souvent),
qui peuvent parfois être supprimés... les "OLE"...



Pas du tout. Tu n'as pas lu ou pas compris: les API appellées font
toutes parties des dll standards de Windows, et sont nécessairement
déjà présentes sur la machine de destination. Il n'y a rien à
ajouter ni à empaqueter.

Je doute que ce soit une bonne méthode d'apprentissage, et je mets au défi
l'utilisateur qui a posé la question d'expliquer l'utilité et


l'interaction
de chaque API entre elles, il va donc faire un copier/coller sans autre
forme de procès...



Pourquoi ça? Il n'y a rien de compliqué, et on trouve des tas de
tutoriaux (en français ou en anglais) sur le subclassing et
les messages Windows. Il n'y a rien de compliqué, il faut juste
lire les docs.

Ce code n'est pas difficile à comprendre, d'autant qu'il
est parfaitement commenté. Par contre, l'écrire et le
mettre au point a du être un peu ardu, mais il est
particulièrement "sioux"!

C'est cher payé pour avoir un peu de couleur dans une liste, en un langage
qui n'est pas du VB majoritairement...



Mettre des couleurs dans un Combo, c'est discutable sur le plan
esthétique et en plus, ça contribue à faire une interface non
standard. Mais bon, c'est un choix.

Quand au prix à payer, il est bien faible ici.

Mais bon, chacun voit midi à sa porte, du moment que comme tu le dis en
intro, ce n'est pas du VB, l'auteur de la question est désormais


prévenu...

Rectification:
- Le contrôle fourni avec VB ne permet pas de faire des textes de couleurs
différentes dans un combo.
- VB (le langage) permet de le faire, en utilisant dans le code des appels
à des fonctions de l'API Windows

--
Phil
Avatar
riki
X a écrit :
Bonjour E.G,


bonjour X

Tu dis "Oui, via un appel aux api's windows, non via les contrôles
standard"
Donc en VB = NON; en langage système dans vb = OUI


la question était simplement si oui ou non on pouvait mettre le comboBox
en couleurs bibibaba...

Ah la c'est exactement ça, sauf que les zAPIs ce n'est absolument pas du VB,
c'est du "langage système" qui peut s'appeler depuis VB en cas de besoin
extrême (d'ailleurs utilisé en assembleur)...


L'expression besoin extrême est subjective!
Ce n'est absolument pas de l'assembleur, mais bien du C.
Il n'a pas demander un niveau de complication, ni rien d'autre???
Si on veut faire simple, acheter un ocx sur componentone ;-)

De plus le code (qualifié de simple), est monstrueusement long juste pour
avoir une couleur il y a:
- Explication est en anglais...
- 200 lignes de code
- 2 feuilles (module + form)


Faux, un form ou un form et un module global, pour le rest pas le temps
de compter ;-)
- 15 APIs appelées
- 18 constantes
- 4 déclarations de type
- 5 fonctions
- 3 procédures


Remarque : Pour vous peut être mais pour M. Simon peut être pas et si
oui peut être c'est un besoin primordial. Donc, entre complexité et
besoin mon coeur balance :-)

Sans omettre le code qu'il faudra sans doute rajouter, et avec lequel il
faudra en permanence jongler pour savoir à quel index on met quelle couleur
de la listes...


C.F. : remarque.
Et in fine, ça provoque des complications à l'empaquetage (mais ce n'est pas
le sujet ici), qui fait appel à des dll ou ocx très lourds (0,8 Mo souvent),
qui peuvent parfois être supprimés... les "OLE"...


Faux, faux ... , avant de dire quelque chose vérifiez le svp :
1. L'utilisation d'api ne fait pas systématiquement appel aux activex.
2. Si c'est le cas, l'activex, peut être livré en standard avec windows.
Donc, pas lié à l'empaquetage. Sinon, c'est suivant l'origine de
l'activex qui définit le besoin ou non de l'empaqueter.
3. Ici, pour ce cas, aucun Activex ou autre dll n'est incorporée dans le
paquetage. L'appel se fait sur des dll standard à windows (0 mb souvent :-))
4. ...

Je doute que ce soit une bonne méthode d'apprentissage, et je mets au défi


M. Simon n'a pas dit qu'il étudiais vb?
l'utilisateur qui a posé la question d'expliquer l'utilité et l'interaction
de chaque API entre elles, il va donc faire un copier/coller sans autre
forme de procès...


Peut être que vous ne le savez pas, mais ne faite pas une généralité et
ne faite pas un procès d'intentions svp.
Aussi, il vrai que la manipulation des api's n'est pas évidente, cf
remarque.

C'est cher payé pour avoir un peu de couleur dans une liste, en un langage
qui n'est pas du VB majoritairement...
Mais bon, chacun voit midi à sa porte, du moment que comme tu le dis en
intro, ce n'est pas du VB, l'auteur de la question est désormais prévenu...




Merci, pour votre aide.

Cordialement,

EG.

------
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"riki" a écrit dans le message de news:
dvr0qq$fr9$
Simon a écrit :
Bonjour a tous

Y a t-il une facons dans un comboBox de mettre exemple les 4 premiere
item en Rouge et les 4 seconde en Bleu (je parle du text ici)

Merci de votre aide !


Bonjour,

Oui, via un appel aux api's windows, non via les contrôles standard.
Voir les sites :
http://vostock.cliranet.com/vb-rs232.php
http://grafikm.developpez.com/portcomm/
http://www.vbfrance.com/
http://support.microsoft.com/default.aspx?scid=kb;en-us;194922
http://fred.just.free.fr/francais/index.php?from=http://fred.just.free.fr/francais/Planet/Planet.html

Vous trouverez des exemples utiles.

Cordialement,

EG.






Avatar
X
Hello Phil,

Ben jadis le langage du noyau de l'OS, du système, ça s'appelait le
langage système... tu doutes, je site in extenso:
"La bible; 6eme édition; année 1996; PC; programmation système..."...
Tout ce qui concerne une programmation qui s'adresse avec un langage propre
au système, donc portable, s'appelle "programmation système", a contrario
"cest une notion qui existe", à moins que ça ait changé de nom, mais bon,
peut importe les mots ???



--
Merci beaucoup, au revoir et à bientôt :o)
------
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"phil" a écrit dans le message de news:
4421434a$0$20704$
"X" wrote in message news:
Bonjour E.G,

Tu dis "Oui, via un appel aux api's windows, non via les contrôles
standard"
Donc en VB = NON; en langage système dans vb = OUI



Langage système ?? Ce n'est pas une notion qui existe.
A la rigueur, on parle parfois de langage machine, mais
ici, je ne vous pas le rapport :-(

Ah la c'est exactement ça, sauf que les zAPIs ce n'est absolument pas du


VB,
c'est du "langage système" qui peut s'appeler depuis VB en cas de besoin
extrême (d'ailleurs utilisé en assembleur)...



VB est un langage de programmation, qui permet de construire
des fonctions appelant d'autres fonctions, etc. Et de fait, oui,
VB permet d'appeler des focntions de l'API windows. Et alors?

VB est un langage pour Windows, il est conçu pour être utilisé sur
un système donné (Windows). Il peut donc en utiliser les fonctions
de base. Il est vrai qu'on peut faire la même chose en C++, en Delphi,
ou en ce qu'on veut, pour autant que le langage permette d'appeler les
fonctions du système.

De plus le code (qualifié de simple), est monstrueusement long juste pour
avoir une couleur il y a:



Lol! On n'a pas la même notion de ce qui est "monstrueusement long" ...

- Explication est en anglais...



Oui, comme 80% des resources de programmation disponibles. Ceci dit,
une fois qu'on a vu que la méthode utilisait le subclassing, il
est très facile de se rediriger vers un site francophone traitant du
sujet, si besoin est.

- 200 lignes de code



Ce qui en fait un code extrémement concis.

- 2 feuilles (module + form)



Tout est dans le module, la forme c'est l'exemple
d'utilisation

- 15 APIs appelées
- 18 constantes
- 4 déclarations de type
- 5 fonctions
- 3 procédures



Oui et alors? Le moindre programme qui est plus qu'un exemple d'école
en comporte 100 fois plus. Le regroupement par modules et les constantes
nommées permettent justement de pouvoir faire ce genre de choses sans être
perdu. Le strict cloisonnement des variables, et une gestion saine de
la portée des variables fait que ce n'est pas un souci. Les Private et
les Public sont faites pour cela

Sans omettre le code qu'il faudra sans doute rajouter, et avec lequel il
faudra en permanence jongler pour savoir à quel index on met quelle


couleur
de la listes...



Non pas du tout, le code est tout bête et l'utilisation
particulièrement simple (une ligne):
Combo1.itemData(Combo1.NewIndex) = QBColor(iIndex)

Il n'y a aucune jonglerie ici. On pourrait mal imaginer plus
simple.

Et in fine, ça provoque des complications à l'empaquetage (mais ce n'est


pas
le sujet ici), qui fait appel à des dll ou ocx très lourds (0,8 Mo


souvent),
qui peuvent parfois être supprimés... les "OLE"...



Pas du tout. Tu n'as pas lu ou pas compris: les API appellées font
toutes parties des dll standards de Windows, et sont nécessairement
déjà présentes sur la machine de destination. Il n'y a rien à
ajouter ni à empaqueter.

Je doute que ce soit une bonne méthode d'apprentissage, et je mets au
défi
l'utilisateur qui a posé la question d'expliquer l'utilité et


l'interaction
de chaque API entre elles, il va donc faire un copier/coller sans autre
forme de procès...



Pourquoi ça? Il n'y a rien de compliqué, et on trouve des tas de
tutoriaux (en français ou en anglais) sur le subclassing et
les messages Windows. Il n'y a rien de compliqué, il faut juste
lire les docs.

Ce code n'est pas difficile à comprendre, d'autant qu'il
est parfaitement commenté. Par contre, l'écrire et le
mettre au point a du être un peu ardu, mais il est
particulièrement "sioux"!

C'est cher payé pour avoir un peu de couleur dans une liste, en un
langage
qui n'est pas du VB majoritairement...



Mettre des couleurs dans un Combo, c'est discutable sur le plan
esthétique et en plus, ça contribue à faire une interface non
standard. Mais bon, c'est un choix.

Quand au prix à payer, il est bien faible ici.

Mais bon, chacun voit midi à sa porte, du moment que comme tu le dis en
intro, ce n'est pas du VB, l'auteur de la question est désormais


prévenu...

Rectification:
- Le contrôle fourni avec VB ne permet pas de faire des textes de couleurs
différentes dans un combo.
- VB (le langage) permet de le faire, en utilisant dans le code des appels
à des fonctions de l'API Windows

--
Phil








Avatar
Jacques93
Bonjour X,
X a écrit :
Hello Phil,

Ben jadis le langage du noyau de l'OS, du système, ça s'appelait le
langage système... tu doutes, je site in extenso:
"La bible; 6eme édition; année 1996; PC; programmation système..."...
Tout ce qui concerne une programmation qui s'adresse avec un langage propre
au système, donc portable, s'appelle "programmation système", a contrario
"cest une notion qui existe", à moins que ça ait changé de nom, mais bon,
peut importe les mots ???




Il me semble qu'il y a confusion entre langage machine (assembleur) et
programmation système.

On peut faire de la programmation système (écriture de pilote de
périphérique par exemple) en C, C++, etc...

et une application de gestion en assembleur (D'accord c'est moins
courant) ...

;-)

--
Cordialement,

Jacques.
Avatar
X
Hello bis, j'ai validé involontairement, désolé, je poursuis...

-2- Et alors, dis-tu, et alors je faisais allusion dans mon esprit à l'appel
à des API (qui fait aussi beaucoup de travail manuel pour l'utilisateur, et
peu d'automatisme, exemple des boîtes de dialogue), donc en fait je voulais
mentionner que les API étaient appelables entre autre depuis VB, mais
n'étaient pas du VB, sous entendu qu'il faut, tant que possible, programmer
en VB (notamment dans un forum VB), mais qu'en l'espèce, et ici c'est le
cas, quand on ne peut faire autrement, évidemment qu'il faut appeler les
API, mais pas le contraire...
On a pu voir des exemples "venus d'ailleurs", où les gens ne connaissaient
presque pas un traître mot de VB, et programmaient tout en API dans un
programme VB, y compris la gestion de fichiers... et alors, diras-tu, lol,
ben alors, en VB on programme en VB...

-3- Mais je le redis, pour le cas présent il n'y a manifestement que les
API, et je pense que ça a été assemblé par bien meilleur que moi :o)

-4- Je trouvais, impression personnelle, que ça faisait beaucoup de code
pour avoir une couleur, et qu'on avait intérêt à bien connaître le mécanisme
des API si on se lançait là dedans, juste un point de vue, qui veut peut
être dire, "si c'est à ce prix, mieux vaut laisser tomber la couleur"...
Si tu trouves ça simple, c'est comment quand c'est compliqué ???

-5- Tu parles de sous-classement, et autres gentilles choses, par exemple
quand tu fais appel à des logiciels extérieurs, prévus pour être appelés par
Windows, comme Excel, etc... Ben tu te retrouves avec les OleAuto32... et ça
fait du gros pour les empaquetages; alors que VB dispose par exemple d'objet
capables de représenter de façon satisfaisante ce que ferait Excel...

-6- Point de vue, soit on programme, soit on paramètres (sortie boîte de
dialogue imprimante), affichage Excel, fichier fait par le moteur d'une BDD,
le tout arrosé copieusement d'API, ben ce n'est plus guère de la
programmation de code en VB tout ça, c'est simplement ce que j'en penses...

Cordialement :o)

------
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"phil" a écrit dans le message de news:
4421434a$0$20704$
"X" wrote in message news:
Bonjour E.G,

Tu dis "Oui, via un appel aux api's windows, non via les contrôles
standard"
Donc en VB = NON; en langage système dans vb = OUI



Langage système ?? Ce n'est pas une notion qui existe.
A la rigueur, on parle parfois de langage machine, mais
ici, je ne vous pas le rapport :-(

Ah la c'est exactement ça, sauf que les zAPIs ce n'est absolument pas du


VB,
c'est du "langage système" qui peut s'appeler depuis VB en cas de besoin
extrême (d'ailleurs utilisé en assembleur)...



VB est un langage de programmation, qui permet de construire
des fonctions appelant d'autres fonctions, etc. Et de fait, oui,
VB permet d'appeler des focntions de l'API windows. Et alors?

VB est un langage pour Windows, il est conçu pour être utilisé sur
un système donné (Windows). Il peut donc en utiliser les fonctions
de base. Il est vrai qu'on peut faire la même chose en C++, en Delphi,
ou en ce qu'on veut, pour autant que le langage permette d'appeler les
fonctions du système.

De plus le code (qualifié de simple), est monstrueusement long juste pour
avoir une couleur il y a:



Lol! On n'a pas la même notion de ce qui est "monstrueusement long" ...

- Explication est en anglais...



Oui, comme 80% des resources de programmation disponibles. Ceci dit,
une fois qu'on a vu que la méthode utilisait le subclassing, il
est très facile de se rediriger vers un site francophone traitant du
sujet, si besoin est.

- 200 lignes de code



Ce qui en fait un code extrémement concis.

- 2 feuilles (module + form)



Tout est dans le module, la forme c'est l'exemple
d'utilisation

- 15 APIs appelées
- 18 constantes
- 4 déclarations de type
- 5 fonctions
- 3 procédures



Oui et alors? Le moindre programme qui est plus qu'un exemple d'école
en comporte 100 fois plus. Le regroupement par modules et les constantes
nommées permettent justement de pouvoir faire ce genre de choses sans être
perdu. Le strict cloisonnement des variables, et une gestion saine de
la portée des variables fait que ce n'est pas un souci. Les Private et
les Public sont faites pour cela

Sans omettre le code qu'il faudra sans doute rajouter, et avec lequel il
faudra en permanence jongler pour savoir à quel index on met quelle


couleur
de la listes...



Non pas du tout, le code est tout bête et l'utilisation
particulièrement simple (une ligne):
Combo1.itemData(Combo1.NewIndex) = QBColor(iIndex)

Il n'y a aucune jonglerie ici. On pourrait mal imaginer plus
simple.

Et in fine, ça provoque des complications à l'empaquetage (mais ce n'est


pas
le sujet ici), qui fait appel à des dll ou ocx très lourds (0,8 Mo


souvent),
qui peuvent parfois être supprimés... les "OLE"...



Pas du tout. Tu n'as pas lu ou pas compris: les API appellées font
toutes parties des dll standards de Windows, et sont nécessairement
déjà présentes sur la machine de destination. Il n'y a rien à
ajouter ni à empaqueter.

Je doute que ce soit une bonne méthode d'apprentissage, et je mets au
défi
l'utilisateur qui a posé la question d'expliquer l'utilité et


l'interaction
de chaque API entre elles, il va donc faire un copier/coller sans autre
forme de procès...



Pourquoi ça? Il n'y a rien de compliqué, et on trouve des tas de
tutoriaux (en français ou en anglais) sur le subclassing et
les messages Windows. Il n'y a rien de compliqué, il faut juste
lire les docs.

Ce code n'est pas difficile à comprendre, d'autant qu'il
est parfaitement commenté. Par contre, l'écrire et le
mettre au point a du être un peu ardu, mais il est
particulièrement "sioux"!

C'est cher payé pour avoir un peu de couleur dans une liste, en un
langage
qui n'est pas du VB majoritairement...



Mettre des couleurs dans un Combo, c'est discutable sur le plan
esthétique et en plus, ça contribue à faire une interface non
standard. Mais bon, c'est un choix.

Quand au prix à payer, il est bien faible ici.

Mais bon, chacun voit midi à sa porte, du moment que comme tu le dis en
intro, ce n'est pas du VB, l'auteur de la question est désormais


prévenu...

Rectification:
- Le contrôle fourni avec VB ne permet pas de faire des textes de couleurs
différentes dans un combo.
- VB (le langage) permet de le faire, en utilisant dans le code des appels
à des fonctions de l'API Windows

--
Phil








Avatar
X
Oui, c'est une question de choix, pas de couleur, ou avalanche d'API +
couleur...
Tout à fait, dans ce cas pas d'ocx ou dll en plus...
Je trouvais simplement que pour avoir la couleur, il fallait en mettre
une tartine...

:o)

------
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"riki" a écrit dans le message de news:
dvrg6b$saq$
X a écrit :
Bonjour E.G,


bonjour X

Tu dis "Oui, via un appel aux api's windows, non via les contrôles
standard"
Donc en VB = NON; en langage système dans vb = OUI


la question était simplement si oui ou non on pouvait mettre le comboBox
en couleurs bibibaba...

Ah la c'est exactement ça, sauf que les zAPIs ce n'est absolument pas du
VB, c'est du "langage système" qui peut s'appeler depuis VB en cas de
besoin extrême (d'ailleurs utilisé en assembleur)...


L'expression besoin extrême est subjective!
Ce n'est absolument pas de l'assembleur, mais bien du C.
Il n'a pas demander un niveau de complication, ni rien d'autre???
Si on veut faire simple, acheter un ocx sur componentone ;-)

De plus le code (qualifié de simple), est monstrueusement long juste pour
avoir une couleur il y a:
- Explication est en anglais...
- 200 lignes de code
- 2 feuilles (module + form)


Faux, un form ou un form et un module global, pour le rest pas le temps de
compter ;-)
- 15 APIs appelées
- 18 constantes
- 4 déclarations de type
- 5 fonctions
- 3 procédures


Remarque : Pour vous peut être mais pour M. Simon peut être pas et si oui
peut être c'est un besoin primordial. Donc, entre complexité et besoin mon
coeur balance :-)

Sans omettre le code qu'il faudra sans doute rajouter, et avec lequel il
faudra en permanence jongler pour savoir à quel index on met quelle
couleur de la listes...


C.F. : remarque.
Et in fine, ça provoque des complications à l'empaquetage (mais ce n'est
pas le sujet ici), qui fait appel à des dll ou ocx très lourds (0,8 Mo
souvent), qui peuvent parfois être supprimés... les "OLE"...


Faux, faux ... , avant de dire quelque chose vérifiez le svp :
1. L'utilisation d'api ne fait pas systématiquement appel aux activex.
2. Si c'est le cas, l'activex, peut être livré en standard avec windows.
Donc, pas lié à l'empaquetage. Sinon, c'est suivant l'origine de l'activex
qui définit le besoin ou non de l'empaqueter.
3. Ici, pour ce cas, aucun Activex ou autre dll n'est incorporée dans le
paquetage. L'appel se fait sur des dll standard à windows (0 mb souvent
:-))
4. ...

Je doute que ce soit une bonne méthode d'apprentissage, et je mets au
défi


M. Simon n'a pas dit qu'il étudiais vb?
l'utilisateur qui a posé la question d'expliquer l'utilité et
l'interaction de chaque API entre elles, il va donc faire un
copier/coller sans autre forme de procès...


Peut être que vous ne le savez pas, mais ne faite pas une généralité et ne
faite pas un procès d'intentions svp.
Aussi, il vrai que la manipulation des api's n'est pas évidente, cf
remarque.

C'est cher payé pour avoir un peu de couleur dans une liste, en un
langage qui n'est pas du VB majoritairement...
Mais bon, chacun voit midi à sa porte, du moment que comme tu le dis en
intro, ce n'est pas du VB, l'auteur de la question est désormais
prévenu...




Merci, pour votre aide.

Cordialement,

EG.

------
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"riki" a écrit dans le message de news:
dvr0qq$fr9$
Simon a écrit :
Bonjour a tous

Y a t-il une facons dans un comboBox de mettre exemple les 4 premiere
item en Rouge et les 4 seconde en Bleu (je parle du text ici)

Merci de votre aide !


Bonjour,

Oui, via un appel aux api's windows, non via les contrôles standard.
Voir les sites :
http://vostock.cliranet.com/vb-rs232.php
http://grafikm.developpez.com/portcomm/
http://www.vbfrance.com/
http://support.microsoft.com/default.aspx?scid=kb;en-us;194922
http://fred.just.free.fr/francais/index.php?from=http://fred.just.free.fr/francais/Planet/Planet.html

Vous trouverez des exemples utiles.

Cordialement,

EG.







1 2