violent_ken
Messages postés1812Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention26 octobre 20102 12 nov. 2006 à 20:44
lol ;)
@+
frederios
Messages postés125Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 décembre 2006 12 nov. 2006 à 20:43
bah...
violent_ken
Messages postés1812Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention26 octobre 20102 12 nov. 2006 à 19:03
Heu, faudrait penser à poster tout ce que tu as à dire en UN SEUL message....
@+
frederios
Messages postés125Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 décembre 2006 12 nov. 2006 à 19:02
Mais DARKSIDIOUS a tout de meme relativement raison, sauf que si tu veux recreer ton propre control tree view moi je dit go parce que en reinvantant la roue on a decouvert les berings et en la reinvantant encore on a mit de bering sur les berings et ainsi de suite.
tout merite d'etre reinvanter amiliorer et retravailler
frederios
Messages postés125Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 décembre 2006 12 nov. 2006 à 18:56
<Mais comme je disais plus haut si tu a fais ton propre ocx go man cest parfais tu peux l'utiliser avec tout l'aise que tu veux.
frederios
Messages postés125Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 décembre 2006 12 nov. 2006 à 18:52
je truste les ocx que je fais, ceux de microsoft et ceux des boite que je trust. le reste ils peuvent bien mettre un keylogger ou des truck comme ca dedant. on sais jamais, pis si tu sais pas tu devrais pas l'utiliser pour de fin comercial.
Croire cest pas savoir.
frederios
Messages postés125Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 décembre 2006 12 nov. 2006 à 18:46
en tout cas mon .exe le plus compliquer( gestionaire de securiter )ne contien que les ocx de base de ma toolbox ne pese que 89k et si je mettrais les strings a part(francais anglais et espagnole) dans un fichier text il serais encore moin pesant que ca... ce que tu dit a propos des ocx que cest interchangeable cest aussi vrais des module(.bas).
ecoute j'ai rien contre les ocx mais cest juste pas pour moi... moi je prefere savoir ce que j'amene au client. un ocx cest comme du McDonald. cest vite fais vite pres ca semble bon ca goute bon,
Defoie tu tombe sur une tete de rat dans le big mac mais cest juste que cette foie la c'etais mal broyer...
mais en gros cest quand meme de la viande pis si cest bien cuit tu devrais pas tomber malade...
violent_ken
Messages postés1812Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention26 octobre 20102 12 nov. 2006 à 17:52
Ok, merci pour l'explication.
@+
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 12 nov. 2006 à 17:49
violent ken : tu fait un projet principal avec l'interface de base (dans mon cas : une feuille contenant un menu "à la outlook" sur la gauche, ou chaque menu appelle des fonctions de mes ocx qui se charge d'afficher les feuilles, de se connecter à la base de données, de récupèrer les mises à jour, etc.). C'est un peu le système des plugins : des fichiers qu'on appelle si on en a besoin, sauf que là on n'a pas besoin de savoir quels plugins on a a disposition, on sais quels sont les ocx à utiliser => plus rapide à charger et à utiliser par early-binding et non en late-binding.
frederios : je ne comprends pas ton raisonnement : les ocx, il faut les distribuer en effet, mais une fois le code compilé dans l'ocx, si tu le copie dans l'exe, ca fera grossir l'exe de la même façon... sauf que là, le code n'est chargé que lorsqu'on en a besoin, contrairement au code de l'exe qui est chargé au démarrage de l'application !
Un autre GROS point en faveur des ocx : les mises à jour de programme : tu as un ocx partagé entre 4 applications, tu trouve un bug dans l'un d'eux, tu n'a qu'à corriger le projet de l'ocx en question, et l'envoyer à tes clients (et uniquement le petit ocx donc). Si c'est le cas dans un code directement dans l'exe des quatres projets, alors il faut corriger dans les 4 projets, recompiler les 4, et envoyer tout l'exe à chacun de tes clients !
Idem, pour les mises à jour : on peux faire des mises à jour d'ocx "à chaud" : pas besoin de quitter l'exe si l'ocx n'est pas utilisé, va faire cà avec un simple exe...
D'ailleurs, pourquoi les logiciels professionnels utilisent des ocx au fait ? Il doit bien y avoir des raisons quand même... Peut-être que ca fait plus pro d'avoir une centaines de dll activeX de quelques Ko voire Mo et un petit exe, qu'un seule gros exe de plusieurs centaine de Mo !
Après, c'est sûr que les ocx c'est pas le top niveau sécurité (surtout les ocx utilisés sur les pages web qui peuvent être détournés), mais il suffit de faire ces propres ocx (comme je le suggère sur cette source par exemple), ou de trouver des codes sources d'ocx, ou d'acheter des ocx tout simplement (ca m'étonnerai fort que des entreprises s'amusent à faire des spyware pour des ocx qui sont leur gagne pain !).
DarK Sidious
frederios
Messages postés125Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 décembre 2006 12 nov. 2006 à 17:32
toi ton zip de distribution va faire 10 meg any way parce que cest sur que tu vas devoir distribuer les ocx avec.
cest sur que les controles simple ex un textbox ca serais con de le recreer mais si tu prend les fameux ocx capture de webcam ou les ocx de transfer ftp exemple moi dans cest cas la je prefere reinventer la roue et tout me retaper moi meme ca cest sur...
pis tout facon j'ai pas a tout retapper le code j'incortpore le module(.bas) a mon code pis pon en parle pus mais au moi je sais quesquil y a dedant...
ca depent..
si tu m'offre un ocx qui controle ma webcam tu peux etre certain que je vas pas le truster...
alors ca depand
mais personelement je prefere toujours faire confiance a du code donc je peux voir et controler qu'a un ocx tout packeter que je peux pas vraiment savoir ce qu'il fais.(sauf si le ocx est de moi bien sur)
violent_ken
Messages postés1812Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention26 octobre 20102 12 nov. 2006 à 17:30
"Note, au cas où ca te surprendrais d'avoir un exe de 32 Ko pour faire tourner un gros logiciel : tu n'es pas obligé de mettre tes forms dans un exe, les ocx font tout aussi bien l'affaire, et ca soulage d'autant ton exe !"
C'est à dire ? Comment gère t-on çà ?
@+
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 12 nov. 2006 à 17:21
frederios, si je comprends bien ton point de vue, tu prégère réinventer la roue plutôt que d'utiliser un truc qui marche ?
Donc tu refaîs à chaque fois un contrôle de bouton, un checkbox, etc, par le code, c'est cà ?
Non vraiment, les ocx n'ont pas été inventés pour faire beau, et pour faire "web", mais bel et bien pour être intégrer dans des programmes, et les soulager : si ton exe fait 10 Mo justement, pose toi des questions !!!
Perso, je développe des projets avec un simple exe de 32 Ko (j'en mets le moins possible dans l'exe), et je charge tout les ocx dont j'ai besoin (et uniquement ceux dont j'ai besoin), lors de l'éxécution. Moralité, le prog mets quelques ms à se charger, j'encombre pas la mémoire avec des miliers de lignes de code pour rien puisque les ocx sont déchargés dès que j'en ai plus besoin.
Bref, comme tu l'a dit, chacun est libre d'avoir son point de vue, mais entre un exe de 10 Mo qui prend donc 10 Mo dès son lancement, et qui doit être relativement lourd à éxécuter, et un exe de 32 Ko qui prend environ 4-5 Mo en éxecution, et qui est très léger à l'éxécution, mon choix est vite fait !
Enfin bref, je ne vais pas refaire un débat sur la réutilisabilité, et l'usage des ocx.
Note, au cas où ca te surprendrais d'avoir un exe de 32 Ko pour faire tourner un gros logiciel : tu n'es pas obligé de mettre tes forms dans un exe, les ocx font tout aussi bien l'affaire, et ca soulage d'autant ton exe !
DarK Sidious
frederios
Messages postés125Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 décembre 2006 12 nov. 2006 à 16:59
Programer pour access cest a peu pres exactement programer vb mais sous une page access
les events les commands et les object sont tous la mais les proprieter des objects sont un peux different. tu peux user le meme style pour programer sous tous le programe de office que tu use pour programer sous vb puisque cest VBA ou un VB qui est fais expressement pour office
frederios
Messages postés125Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 décembre 2006 12 nov. 2006 à 16:42
oui mais tu doie distribuer ton exe de 32k dans un zip de 10meg moi je prefere pas user de ocx quand cest possible, on sais jamais quesqui se passe vraiment dans un ocx(ca pourrais meme agire en spy-ware si tu as pas creer le controle toi meme)...
cest sur que si tu a pas le choix ex tu sais pas comment le faire par toi-meme et que aucun tutoriel n'est disponible pour te l'apprendre alors pas le choix, pas le choix tu use du ocx...
les ocx dans le fond c'est bon pourles page web(pis meme la le page web vont chialller) mais si cest un desktop aplication le mieux cest de faire ton propre boute de programe...
cest mon opinion et comme on dit tout le monde a le droit a mon opinion...
Merci
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 26 oct. 2006 à 12:47
Je ne connais pas access (je parle niveau programmation !), et je ne sais pas s'il gère bien ou pas les ocx.
Forcément, s'il gère très mal les ocx, il vaut mieux les éviter, mais dans l'autre cas, je ne vois vraiment pas pourquoi les professionnels conseillerais de les éviter !!!
Il faut savoir s'en servir, ca c'est sûr : si on compile avec les pieds en enlevant la compatibilité binaire (ce que la plupart des membres de Codes-Sources font...), forcément, les ocx ne sont pas compatibles d'une version à une autre. Mais si on sais utiliser les ocx, qu'on les compile comme il faut, il n'y a aucun problème (ca fait plusieurs années que j'en utilise, que ce soit chez moi ou chez mes clients, et je n'ai pas rencontrer de problèmes dû à l'utilisation d'ocx, bien au contraire, cela me permet de créer des exe de 32 Ko seulement, d'avoir des bouts de programme qui s'éxécute en parallèle rapidement (une thread par ocx) et un prog qui prends très peu de ressources).
DarK Sidious
PADYVEN
Messages postés69Date d'inscriptionlundi 10 février 2003StatutMembreDernière intervention29 août 2012 26 oct. 2006 à 12:39
je n'ai rien contre les ocx darksidious
mais quand ton ocx plante c'est tous ton program qui plante
de plus j'ai le contenaire a balader sur ma feuille et justement j'en veux pas
je mettrai sur le site demain ou apres demain le code de la class MonTreeView.
apres ecriture j'avourai que des interets j'en ai vu un ou deux
des problemes j'en ai vu plusieurs
dont l'un est de me balader du form1 dans mon module de class
il faut que j'evite ca
mais bon merci de tes commentaires sa prouve que le code permet au moin une discution
REMY2405
c'est sympa ce que tu dit ,si si ca me touche beaucoup
merci de deffendre mais interet tu es le seul depuis le debut snif
:-) lol
a bientot pour la suite
j'appelerai ca MonControlTreeView2
a+
remy2405
Messages postés10Date d'inscriptionjeudi 19 février 2004StatutMembreDernière intervention26 octobre 2006 26 oct. 2006 à 10:14
Salut Dark Sidious
je programme surtout sous MS-Access
Dans les différents forums (ici en Allemagne), la plupart des programmeurs professionnels (aussi les MVP) recommandent d'éviter les ocx car celà provoque très souvent des problèmes à l'installation d'une mde (equivaut à exe en ms-access) sur la machine des clients (du moins les ocx "systeme")
Naturellement je préfererais également "découper" mon application en modules; mais vu cette recommandation je préfere éviter (sauf justement le treeview ou le webcontrol).
Tous ces professionels ne peuvent pas se tromper? ou me trompe-je moi-même? En fait je cherche une application qui me permette d'installer ou "corriger" une installation sur une machine du client sans avoir à passer des heures au télephone (si jamais une autre installation de programme a détruit mon installation).
A part celà je trouve le code de padyven intéressant; l'adapter sur ms-access dans un formulaire va sans doute ètre un peu plus long.
remy2405
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 25 oct. 2006 à 17:50
oula oula !!!!!!
Un bon code n'est pas forcément un code qui est court (bien au contraire je dirais !) et qui marche vite et sans bug (bien que si ca marche vite et sans bug, c'est déjà cà)
Il existe tellement d'usines à gaz !
Un bon code, c'est un code facile à lire, bien organisé, et surtout : maintenable et réutilisable.
Ce qui veut dire :
1/ Facile à lire = commenté mais pas trop, bien indenté, séparé dans des namespaces (par modules ou par classes en notion vb).
2/ Bien organisé que l'on sache très vite où est codé telle chose> des noms de fichiers intuitif, des noms de fonctions et de variables bien choisies, un découpage logique du programme, etc.
3/ Maintenable et réutilisable = c'est là où interviennent les classes ! La programmation impérative à vécue (et vit encore un peu de nos jours), mais le constat est là : la POO est bien plus pratique à utiliser ! Elle permet de ne pas dupliquer le code (au moins 95 % du code d'un programme ne devrait pas être du code dupliqué à mon avis pour que ca soit un bon programme !), d'avoir une sécurité accrue des données (l'encapsulation y est pour beaucoup !), et surtout, un mode de fonctionnement par objets plus intuitif que des appels de fonctions ! Cela permet d'avoir un code plus facile à corriger en cas d'erreur (on ne corrige que le bout de code incriminé, et non plus tout les copier/coller qu'on a pu faire, comme on le voit trop souvent dans des prog impératifs !), et surtout, ca permet de réutiliser des classes (pas besoin de réinventer la roue à chaque fois, ce qui fait perdre énormément de temps !).
Tu peux rester sceptique face à tout cà, mais crois moi, si tu fait des études en informatiques, c'est ce qu'on t'apprendras (perso, je suis en 5ème année de fac, et on nous apprends cà en conduite de projet entre autre !), et lorsque t'y réfléchit, ca paraît évident !
La POO n'est pas là pour faire joli, ou pour ralentir le temps de développement, bien au contraire, une fois qu'on la maîtrise, on gagne un temps fou ! Le nombre de lignes de code est plus important, certes, mais ce sont des lignes qui une fois tapées sont réutilisées à bon escient !
Qu'est-ce qui te gêne dans le contrôles ocx ??? Qu'il ai un container est justement une excellente chose : ca te permet de gérer la taille de ton listview selon le container, de ne raffraichir que le container (donc optimisation du tracé !), gérer les événements du container (et non plus interférer avec tout les événements de ta forme, ce n'est pas négligeable !), le réutiliser dans n'importe quel autre projet (là encore, ce n'est pas négligeable, car dans l'état actuel, je vois pas qui ca pourrait intéresser d'avoir un treeview tracé dans une form !)...
DarK Sidious
PADYVEN
Messages postés69Date d'inscriptionlundi 10 février 2003StatutMembreDernière intervention29 août 2012 25 oct. 2006 à 17:15
J'ai rien contre les commentaire de darksidious (C'est vrai il est sec mais bof je suis pas mieux)
mais ca serais sympa de lire ce que j'ai pris la peine d'ecrire auparavant vous savez dans Explication FINAL
je ne veux pas faire de control car c'est pour utiliser directement sur ma feuille (A moin qu'un control soit capable d'agir sans conteneur si oui donnez moi un exemple please)
quand a la class je suis en train de la faire ca me rajoute 100 lignes et j'ai du mal a voir l'interet (temps machine, nombre de passage dans les fonctions, etc)
Si vous pouvez m'expliquer comment optimiser le code en class ca m'interresse aussi parce que la ...
de plus pour moi un des interet de VB c'est la rapidite d'ecriture de code avant d'avoir un resultat si je veux etre puriste j'ecrit en c.
quand on parle de la qualitée d'un code on parle de la facon dont il est ecrit pas de la facon dont il est placee (Class, control,)
si quelqun peut faire la meme chose que moi en moins de ligne et sans bug il aura mieux codé.Apres seulement ce pose la question des class et des controles
merci a tous a +
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 25 oct. 2006 à 07:00
lol chaibat, c'est vrai qu'il faut prendre ce que je dit au second dégré toujours et y réfléchir à deux fois ;) Je ne veux de mal à personne moi ;)
Donc pour revenir au problème du usercontrol : le fait d'utiliser un usercontrol permet de réutiliser ta source "partout", et de ne pas être obligé de réserver une place sur une feuille pour ton treeview, et dès que tu veux modifier cet emplacement, ca change tout le code.
Concernant les classes, ca permettrait quand une approche objet du code, ce qui n'est pas négligeable : encapsulation des données et des méthodes dans les objets, hiérarchie des classes (collections de noeuds par exemple), duplication de code limitée, faire des noeuds qui peuvent avoir des comportements différents selon certaines de leur propriétés (sorte de polymorphisme donc), etc.
Les treeview et listview sont des contrôles qui se prêtent très bien à la POO, et sont bien plus difficile à programmer en fonctionnel !
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 24 oct. 2006 à 23:09
effectivement,
mais le problème de DARKSIDIOUS c' est qu' il est le plus souvent mal compris.
la pluspart considère ses interventions comme des attaques persionnelles.
Ce n' est qu' après coup qu' on réalise que ce qu' il dit c' est par pur souci
de pousser les gens vers l' avant.
DARKSIDIOUS: reste comme tu l' a toujours été et ne changes en rien.
Bonne soirée à tous.
violent_ken
Messages postés1812Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention26 octobre 20102 24 oct. 2006 à 19:26
Salut, ce que DARKSIDIOUS veut dire, c'est qu'il faut mieux coder ce genre de programme dans un UserControl.
(Projet, Ajouter un contrôle utilisateur)
Comme çà tu peux gérer les Properties, les Events, les fonctions/procedures publiques...etc.
Et tu implantes ensuite ton contrôle dans n'importe quelle form de manière très simple. Même pas besoin de classe (sauf peut être pour un type de donnée perso, genre Node).
@+
PADYVEN
Messages postés69Date d'inscriptionlundi 10 février 2003StatutMembreDernière intervention29 août 2012 24 oct. 2006 à 14:29
Ps:N'oublier pas un des aspect de VBFrance l'aspect didactique et educatif
un code qui montre deux trois API et la recursivitée peut etre utile a des moins avancé que vous merci
PADYVEN
Messages postés69Date d'inscriptionlundi 10 février 2003StatutMembreDernière intervention29 août 2012 24 oct. 2006 à 13:52
je veux pas utiliser un control parce que je veux avoir quelque chose derriere
le treeview de vbaccelerator et bien mais il demande des dll
supplementaire de plus c'est un control
j'ai juste besoin d'afficher un arbre sur une picture ou une form
et la je peux tout parametrer d'ou l'interer de la roue carre mais merci quand meme
quand au class sa vas etre fait mais en 6 heures j'ai pas eu le temps de faire mieux et je debute en class
si tu as le temps de m'aider a faire la class tu es le bien venu
j'aurais mis ca en initié si c'etait propre lol
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 24 oct. 2006 à 13:37
Pourquoi réinventer la roue ??? Surtout que tu es encore très loin des possibilités d'un treeview standard !
Va voir le treeview du site vbaccelerator.com, tu aura une base à améliorer à tes besoins (le code est donné avec).
Sinon, concernant ta source : aïe ! Pourquoi tracer dans une feuille ??? Utilise un contrôle perso, c'est bien plus propre ! Et puis utilise des classes pour tes noeuds, c'est bien plus pratique !
12 nov. 2006 à 20:44
@+
12 nov. 2006 à 20:43
12 nov. 2006 à 19:03
@+
12 nov. 2006 à 19:02
tout merite d'etre reinvanter amiliorer et retravailler
12 nov. 2006 à 18:56
12 nov. 2006 à 18:52
Croire cest pas savoir.
12 nov. 2006 à 18:46
ecoute j'ai rien contre les ocx mais cest juste pas pour moi... moi je prefere savoir ce que j'amene au client. un ocx cest comme du McDonald. cest vite fais vite pres ca semble bon ca goute bon,
Defoie tu tombe sur une tete de rat dans le big mac mais cest juste que cette foie la c'etais mal broyer...
mais en gros cest quand meme de la viande pis si cest bien cuit tu devrais pas tomber malade...
12 nov. 2006 à 17:52
@+
12 nov. 2006 à 17:49
frederios : je ne comprends pas ton raisonnement : les ocx, il faut les distribuer en effet, mais une fois le code compilé dans l'ocx, si tu le copie dans l'exe, ca fera grossir l'exe de la même façon... sauf que là, le code n'est chargé que lorsqu'on en a besoin, contrairement au code de l'exe qui est chargé au démarrage de l'application !
Un autre GROS point en faveur des ocx : les mises à jour de programme : tu as un ocx partagé entre 4 applications, tu trouve un bug dans l'un d'eux, tu n'a qu'à corriger le projet de l'ocx en question, et l'envoyer à tes clients (et uniquement le petit ocx donc). Si c'est le cas dans un code directement dans l'exe des quatres projets, alors il faut corriger dans les 4 projets, recompiler les 4, et envoyer tout l'exe à chacun de tes clients !
Idem, pour les mises à jour : on peux faire des mises à jour d'ocx "à chaud" : pas besoin de quitter l'exe si l'ocx n'est pas utilisé, va faire cà avec un simple exe...
D'ailleurs, pourquoi les logiciels professionnels utilisent des ocx au fait ? Il doit bien y avoir des raisons quand même... Peut-être que ca fait plus pro d'avoir une centaines de dll activeX de quelques Ko voire Mo et un petit exe, qu'un seule gros exe de plusieurs centaine de Mo !
Après, c'est sûr que les ocx c'est pas le top niveau sécurité (surtout les ocx utilisés sur les pages web qui peuvent être détournés), mais il suffit de faire ces propres ocx (comme je le suggère sur cette source par exemple), ou de trouver des codes sources d'ocx, ou d'acheter des ocx tout simplement (ca m'étonnerai fort que des entreprises s'amusent à faire des spyware pour des ocx qui sont leur gagne pain !).
DarK Sidious
12 nov. 2006 à 17:32
cest sur que les controles simple ex un textbox ca serais con de le recreer mais si tu prend les fameux ocx capture de webcam ou les ocx de transfer ftp exemple moi dans cest cas la je prefere reinventer la roue et tout me retaper moi meme ca cest sur...
pis tout facon j'ai pas a tout retapper le code j'incortpore le module(.bas) a mon code pis pon en parle pus mais au moi je sais quesquil y a dedant...
ca depent..
si tu m'offre un ocx qui controle ma webcam tu peux etre certain que je vas pas le truster...
alors ca depand
mais personelement je prefere toujours faire confiance a du code donc je peux voir et controler qu'a un ocx tout packeter que je peux pas vraiment savoir ce qu'il fais.(sauf si le ocx est de moi bien sur)
12 nov. 2006 à 17:30
C'est à dire ? Comment gère t-on çà ?
@+
12 nov. 2006 à 17:21
Donc tu refaîs à chaque fois un contrôle de bouton, un checkbox, etc, par le code, c'est cà ?
Non vraiment, les ocx n'ont pas été inventés pour faire beau, et pour faire "web", mais bel et bien pour être intégrer dans des programmes, et les soulager : si ton exe fait 10 Mo justement, pose toi des questions !!!
Perso, je développe des projets avec un simple exe de 32 Ko (j'en mets le moins possible dans l'exe), et je charge tout les ocx dont j'ai besoin (et uniquement ceux dont j'ai besoin), lors de l'éxécution. Moralité, le prog mets quelques ms à se charger, j'encombre pas la mémoire avec des miliers de lignes de code pour rien puisque les ocx sont déchargés dès que j'en ai plus besoin.
Bref, comme tu l'a dit, chacun est libre d'avoir son point de vue, mais entre un exe de 10 Mo qui prend donc 10 Mo dès son lancement, et qui doit être relativement lourd à éxécuter, et un exe de 32 Ko qui prend environ 4-5 Mo en éxecution, et qui est très léger à l'éxécution, mon choix est vite fait !
Enfin bref, je ne vais pas refaire un débat sur la réutilisabilité, et l'usage des ocx.
Note, au cas où ca te surprendrais d'avoir un exe de 32 Ko pour faire tourner un gros logiciel : tu n'es pas obligé de mettre tes forms dans un exe, les ocx font tout aussi bien l'affaire, et ca soulage d'autant ton exe !
DarK Sidious
12 nov. 2006 à 16:59
les events les commands et les object sont tous la mais les proprieter des objects sont un peux different. tu peux user le meme style pour programer sous tous le programe de office que tu use pour programer sous vb puisque cest VBA ou un VB qui est fais expressement pour office
12 nov. 2006 à 16:42
cest sur que si tu a pas le choix ex tu sais pas comment le faire par toi-meme et que aucun tutoriel n'est disponible pour te l'apprendre alors pas le choix, pas le choix tu use du ocx...
les ocx dans le fond c'est bon pourles page web(pis meme la le page web vont chialller) mais si cest un desktop aplication le mieux cest de faire ton propre boute de programe...
cest mon opinion et comme on dit tout le monde a le droit a mon opinion...
Merci
26 oct. 2006 à 12:47
Forcément, s'il gère très mal les ocx, il vaut mieux les éviter, mais dans l'autre cas, je ne vois vraiment pas pourquoi les professionnels conseillerais de les éviter !!!
Il faut savoir s'en servir, ca c'est sûr : si on compile avec les pieds en enlevant la compatibilité binaire (ce que la plupart des membres de Codes-Sources font...), forcément, les ocx ne sont pas compatibles d'une version à une autre. Mais si on sais utiliser les ocx, qu'on les compile comme il faut, il n'y a aucun problème (ca fait plusieurs années que j'en utilise, que ce soit chez moi ou chez mes clients, et je n'ai pas rencontrer de problèmes dû à l'utilisation d'ocx, bien au contraire, cela me permet de créer des exe de 32 Ko seulement, d'avoir des bouts de programme qui s'éxécute en parallèle rapidement (une thread par ocx) et un prog qui prends très peu de ressources).
DarK Sidious
26 oct. 2006 à 12:39
mais quand ton ocx plante c'est tous ton program qui plante
de plus j'ai le contenaire a balader sur ma feuille et justement j'en veux pas
je mettrai sur le site demain ou apres demain le code de la class MonTreeView.
apres ecriture j'avourai que des interets j'en ai vu un ou deux
des problemes j'en ai vu plusieurs
dont l'un est de me balader du form1 dans mon module de class
il faut que j'evite ca
mais bon merci de tes commentaires sa prouve que le code permet au moin une discution
REMY2405
c'est sympa ce que tu dit ,si si ca me touche beaucoup
merci de deffendre mais interet tu es le seul depuis le debut snif
:-) lol
a bientot pour la suite
j'appelerai ca MonControlTreeView2
a+
26 oct. 2006 à 10:14
je programme surtout sous MS-Access
Dans les différents forums (ici en Allemagne), la plupart des programmeurs professionnels (aussi les MVP) recommandent d'éviter les ocx car celà provoque très souvent des problèmes à l'installation d'une mde (equivaut à exe en ms-access) sur la machine des clients (du moins les ocx "systeme")
Naturellement je préfererais également "découper" mon application en modules; mais vu cette recommandation je préfere éviter (sauf justement le treeview ou le webcontrol).
Tous ces professionels ne peuvent pas se tromper? ou me trompe-je moi-même? En fait je cherche une application qui me permette d'installer ou "corriger" une installation sur une machine du client sans avoir à passer des heures au télephone (si jamais une autre installation de programme a détruit mon installation).
A part celà je trouve le code de padyven intéressant; l'adapter sur ms-access dans un formulaire va sans doute ètre un peu plus long.
remy2405
25 oct. 2006 à 17:50
Un bon code n'est pas forcément un code qui est court (bien au contraire je dirais !) et qui marche vite et sans bug (bien que si ca marche vite et sans bug, c'est déjà cà)
Il existe tellement d'usines à gaz !
Un bon code, c'est un code facile à lire, bien organisé, et surtout : maintenable et réutilisable.
Ce qui veut dire :
1/ Facile à lire = commenté mais pas trop, bien indenté, séparé dans des namespaces (par modules ou par classes en notion vb).
2/ Bien organisé que l'on sache très vite où est codé telle chose> des noms de fichiers intuitif, des noms de fonctions et de variables bien choisies, un découpage logique du programme, etc.
3/ Maintenable et réutilisable = c'est là où interviennent les classes ! La programmation impérative à vécue (et vit encore un peu de nos jours), mais le constat est là : la POO est bien plus pratique à utiliser ! Elle permet de ne pas dupliquer le code (au moins 95 % du code d'un programme ne devrait pas être du code dupliqué à mon avis pour que ca soit un bon programme !), d'avoir une sécurité accrue des données (l'encapsulation y est pour beaucoup !), et surtout, un mode de fonctionnement par objets plus intuitif que des appels de fonctions ! Cela permet d'avoir un code plus facile à corriger en cas d'erreur (on ne corrige que le bout de code incriminé, et non plus tout les copier/coller qu'on a pu faire, comme on le voit trop souvent dans des prog impératifs !), et surtout, ca permet de réutiliser des classes (pas besoin de réinventer la roue à chaque fois, ce qui fait perdre énormément de temps !).
Tu peux rester sceptique face à tout cà, mais crois moi, si tu fait des études en informatiques, c'est ce qu'on t'apprendras (perso, je suis en 5ème année de fac, et on nous apprends cà en conduite de projet entre autre !), et lorsque t'y réfléchit, ca paraît évident !
La POO n'est pas là pour faire joli, ou pour ralentir le temps de développement, bien au contraire, une fois qu'on la maîtrise, on gagne un temps fou ! Le nombre de lignes de code est plus important, certes, mais ce sont des lignes qui une fois tapées sont réutilisées à bon escient !
Qu'est-ce qui te gêne dans le contrôles ocx ??? Qu'il ai un container est justement une excellente chose : ca te permet de gérer la taille de ton listview selon le container, de ne raffraichir que le container (donc optimisation du tracé !), gérer les événements du container (et non plus interférer avec tout les événements de ta forme, ce n'est pas négligeable !), le réutiliser dans n'importe quel autre projet (là encore, ce n'est pas négligeable, car dans l'état actuel, je vois pas qui ca pourrait intéresser d'avoir un treeview tracé dans une form !)...
DarK Sidious
25 oct. 2006 à 17:15
mais ca serais sympa de lire ce que j'ai pris la peine d'ecrire auparavant vous savez dans Explication FINAL
je ne veux pas faire de control car c'est pour utiliser directement sur ma feuille (A moin qu'un control soit capable d'agir sans conteneur si oui donnez moi un exemple please)
quand a la class je suis en train de la faire ca me rajoute 100 lignes et j'ai du mal a voir l'interet (temps machine, nombre de passage dans les fonctions, etc)
Si vous pouvez m'expliquer comment optimiser le code en class ca m'interresse aussi parce que la ...
de plus pour moi un des interet de VB c'est la rapidite d'ecriture de code avant d'avoir un resultat si je veux etre puriste j'ecrit en c.
quand on parle de la qualitée d'un code on parle de la facon dont il est ecrit pas de la facon dont il est placee (Class, control,)
si quelqun peut faire la meme chose que moi en moins de ligne et sans bug il aura mieux codé.Apres seulement ce pose la question des class et des controles
merci a tous a +
25 oct. 2006 à 07:00
Donc pour revenir au problème du usercontrol : le fait d'utiliser un usercontrol permet de réutiliser ta source "partout", et de ne pas être obligé de réserver une place sur une feuille pour ton treeview, et dès que tu veux modifier cet emplacement, ca change tout le code.
Concernant les classes, ca permettrait quand une approche objet du code, ce qui n'est pas négligeable : encapsulation des données et des méthodes dans les objets, hiérarchie des classes (collections de noeuds par exemple), duplication de code limitée, faire des noeuds qui peuvent avoir des comportements différents selon certaines de leur propriétés (sorte de polymorphisme donc), etc.
Les treeview et listview sont des contrôles qui se prêtent très bien à la POO, et sont bien plus difficile à programmer en fonctionnel !
24 oct. 2006 à 23:09
mais le problème de DARKSIDIOUS c' est qu' il est le plus souvent mal compris.
la pluspart considère ses interventions comme des attaques persionnelles.
Ce n' est qu' après coup qu' on réalise que ce qu' il dit c' est par pur souci
de pousser les gens vers l' avant.
DARKSIDIOUS: reste comme tu l' a toujours été et ne changes en rien.
Bonne soirée à tous.
24 oct. 2006 à 19:26
(Projet, Ajouter un contrôle utilisateur)
Comme çà tu peux gérer les Properties, les Events, les fonctions/procedures publiques...etc.
Et tu implantes ensuite ton contrôle dans n'importe quelle form de manière très simple. Même pas besoin de classe (sauf peut être pour un type de donnée perso, genre Node).
@+
24 oct. 2006 à 14:29
un code qui montre deux trois API et la recursivitée peut etre utile a des moins avancé que vous merci
24 oct. 2006 à 13:52
le treeview de vbaccelerator et bien mais il demande des dll
supplementaire de plus c'est un control
j'ai juste besoin d'afficher un arbre sur une picture ou une form
et la je peux tout parametrer d'ou l'interer de la roue carre mais merci quand meme
quand au class sa vas etre fait mais en 6 heures j'ai pas eu le temps de faire mieux et je debute en class
si tu as le temps de m'aider a faire la class tu es le bien venu
j'aurais mis ca en initié si c'etait propre lol
24 oct. 2006 à 13:37
Va voir le treeview du site vbaccelerator.com, tu aura une base à améliorer à tes besoins (le code est donné avec).
Sinon, concernant ta source : aïe ! Pourquoi tracer dans une feuille ??? Utilise un contrôle perso, c'est bien plus propre ! Et puis utilise des classes pour tes noeuds, c'est bien plus pratique !
DarK Sidious