cs_AbriBus
Messages postés492Date d'inscriptionjeudi 28 août 2003StatutMembreDernière intervention25 avril 2007
-
9 janv. 2004 à 00:22
Utilisateur anonyme -
8 mars 2009 à 07:59
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Renfield Ta source m'a sauver la vie, 10/10 Thx !!!
(3 Jours que je cheche une source pareille).
Thank You ! =D
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 22 oct. 2007 à 22:02
On m'avait dit de faire comme ça, mais je te fais confiance :p
J'utiliserai unload me maintenant :)
Merci pour toutes ces informations, si j'ai d'autres questions j'irai sur le forum au lieu de spoiler ta source, désolé pour ça, et bonne continuation, ça fait plaisir de voir des gens qui sont à fond dans ce qu'ils font et gentils comme ça! :)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 22 oct. 2007 à 05:55
END a proscrire, de toutes facon, ca ne decharge pas le programme proprement...
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 19 oct. 2007 à 23:56
merci, ça marche maintenant, programme opérationnel grâce à toi et à Renfield :)
mais je ne comprends pas pourquoi ça fonctionnait avant avec END dans l'editeur, et pas avec le .exe.
J'ai une idée, mais pas entière :)
Merci infiniment à tous les deux en tout cas, ainsi qu'à tous les gens qui font vivre cet excellent site!
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 19 oct. 2007 à 23:41
çà vient du subclassing
END est incorrect, remplace par unload me
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 19 oct. 2007 à 23:20
Hmmm ça fait pareil si je rajoute un bouton pour quitter dans ton programme, sous VB6, ça marche bien, mais en .exe, ça marche plus.
fermer par la croix en haut à gauche, ça marche encore, mais il me faudrait ce bouton, quelqu'un sait s'il y a une manière différente de fermer un programme d'une autre que "end"?
Merci :)
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 19 oct. 2007 à 23:01
Hmmm j'ai un dernier petit problème, j'ai fini mon programme, en incluant donc ce module, mais je viens de me rendre compte que j'ai un bug depuis que j'ai mis ce module (j'avais fait des sauvegardes de passe au cas où pour s'il y a une erreur, voir de quand elle date si jamais je ne m'en rends pas compte tout de suite).
J'ai un bouton "quitter" dans mon programme, quand j'appuie dessus, bon je fais "end", et puis c'est fini.
Quand je fais ça dans l'éditeur, avec vb6.0, tout marche impec, mais dès que je fais un .exe, et que j'appuie sur le bouton quitter, le programme plante (il me bouffe mon CPU pour rien, et rien ne bouge).
Une idée quelqu'un? >_<
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 19 oct. 2007 à 20:36
Wow, tout le code refait...
C'est encore mieux qu'avant, super !
J'ai réussi à l'intégrer dans mon programme aussi, tout marche impec maintenant, merci! :)
Il ne me manque plus qu'à commencer à apprendre à programmer maintenant... *_*
Dommage que je ne puisse pas revoter pour te mettre 10/10 ;)
A bientôt
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 19 oct. 2007 à 11:44
j'ai uploadé le Zip.
dll supprimée, plus besoin d'elle...
davantage de fichiers, mais chaque chose est désormais a sa place.
en cliquant dans le fond de la form, l'image de fond change.
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 19 oct. 2007 à 10:20
Oh merci, j'essaie ça ce soir dès que je rentre chez moi :)
Je ne connaissais pas cette commande (j'en connais peu, j'ai commancé le visual basic il y a un peu plus d'une semaine, et je n'ai que peu (ou pas) de sources de lecture).
Je vais étudier le plus possible des codes que je trouve ici pour voir de nouvelles commandes.
Merci beaucoup :)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 19 oct. 2007 à 09:55
je pensais plutot à un appel à RedrawWindow (API)
testé ca fonctionne. actuellement, je modernise le code...
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 19 oct. 2007 à 01:24
Hmmm rectifications... essayer de rendre la boîte texte transparente avec ce code après avoir changé d'arrière plan rend la boîte texte blanche.
Le refresh ne fait, ici, rien du tout. (si on fait le refresh seul, ça ne donne rien, si on le fait après avoir tenté de "re-rendre" la boîte transparente, ça reste blanc, et si on le fait avant, ça ne donne rien de mieux.)
Peut être je me trompe dans ma façon d'utiliser la fonction.
J'ai utilisé le
Private Declare Function SetStretchBltMode Lib "gdi32" (ByVal hdc As Long, ByVal nStretchMode As Long) As Long
Private Const HALFTONE = 4
Dim TransparentControl As Class_TransparentControl
Private Sub Form_Load()
Set TransparentControl = New Class_TransparentControl
TransparentControl.Attach Text1
TransparentControl.UpdateBackGround Text1
End Sub
comme dans ton programme, puis dans un sub, après avoir appuyé sur le bouton pour changer l'arrière plan:
Voili voili, si vous trouvez une erreur débile (et il y en a peut être une, je débute...), et que vous pouvez m'aiguiller, ça serait très sympa :)
Je vais réfléchir sur la question de mon côté :)
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 19 oct. 2007 à 00:34
Après avoir changé le fond, effectué l'opération, puis un refresh (ou dans l'ordre inverse), la boîte texte devient blanche :)
Je vais essayer de plancher dessus pour voir d'où ça vient, car j'aimerais bien pouvoir changer l'arrière plan tout en gardant la textbox transparente :)
Merci Renfield, et encore une fois, super code :)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 18 oct. 2007 à 22:21
faut, je crois forcer un raffraichissement du textbox
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 18 oct. 2007 à 21:21
Bonjour, je débute dans le visual basic (j'en suis à mon premier programme), je trouve ce code que tu as fait super pratique, c'est exactement ce que je cherchais pour finir mon projet :)
Mais j'ai un problème, j'ai transposé ton code, et il marche, il m'affiche bien mes fichiers texte transparents, seulement si j'essaie de changer l'image de fond de ma form, l'ancienne image reste gravée dans le text, et si j'essaie de réappliquer le procédé de transparence, rien de ne passe.
Quelqu'un aurait il une idée de comment il faut s'y prendre?
Merci :)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 16 oct. 2007 à 12:48
a ajouter dans
Projet > References
++
rherym
Messages postés4Date d'inscriptionjeudi 8 mars 2007StatutMembreDernière intervention 3 février 2008 16 oct. 2007 à 11:47
Ce que tu as fais là est vraiment formidable mais je n'arrive pas à m'en servir dans une autre projet. J'ai enregistré la dll mais vb renvoie toujours comme erreur "user-defined type not defined" et selectionne le code dans la module de classe "WithEvents SubClasser As ReySubClasser" alors que j'ai ajouté dans mon projet la module originale et aussi la module de classe. vb renvoie toujours la meme erreur meme si on n'utilise pas les fichiers. Meri de bien m'aider
bbcluny
Messages postés66Date d'inscriptionmardi 25 mars 2003StatutMembreDernière intervention29 septembre 2008 2 mai 2007 à 10:11
Effectivement en modifiant les options de VB6, cela fonctione
Merci
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 1 mai 2007 à 13:58
gaffe à ce que ton IDE ne s'arrete pas sur "toutes les erreurs"
bbcluny
Messages postés66Date d'inscriptionmardi 25 mars 2003StatutMembreDernière intervention29 septembre 2008 30 avril 2007 à 17:39
non,
j'ai enregistré la dll et j'ai juste lancer le code par defaut.
mais je vais tester sur une autre machine.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 30 avril 2007 à 13:00
tu tentes de lier deux fois le même objet ?
bbcluny
Messages postés66Date d'inscriptionmardi 25 mars 2003StatutMembreDernière intervention29 septembre 2008 30 avril 2007 à 11:48
Bonjour,
lors du 2° appel de ta fonction Attach, j'obtiens l'erreur suivante:
"Cette clé est déjà associée à un élément de cette collection"
Peux tu me dire d'ou vient l'erreur?
Vedlen
Messages postés360Date d'inscriptionmardi 14 octobre 2003StatutMembreDernière intervention 7 septembre 2009 23 oct. 2006 à 22:46
Hmm à moins que je me sois planté ça n'a pas l'air de marcher...?
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 23 oct. 2006 à 21:14
tu déclares l'API comme suit :
Private Declare Function RedrawWindow Lib "user32.dll" (ByVal hwnd As Long, ByRef lprcUpdate As Any, ByVal hrgnUpdate As Long, ByVal fuRedraw As Long) As Long
Vedlen
Messages postés360Date d'inscriptionmardi 14 octobre 2003StatutMembreDernière intervention 7 septembre 2009 22 oct. 2006 à 19:46
heu.. C'est où RedrawWindow ?..
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 22 oct. 2006 à 18:34
pas la source en tête...
ca doit être pour forcer le raffraichissement
un appel à RedrawWindow doit suffire
Vedlen
Messages postés360Date d'inscriptionmardi 14 octobre 2003StatutMembreDernière intervention 7 septembre 2009 22 oct. 2006 à 01:32
Hmm ça n'a pas l'air de marcher pour les frames..
Cela dit je n'ai pas compris pourquoi il faut redimensionner les contrôles pour qu'ils acquierrent la transparence ^o)
cs_Exploreur
Messages postés4821Date d'inscriptionlundi 11 novembre 2002StatutMembreDernière intervention15 novembre 201615 1 sept. 2006 à 14:31
Parfait...rien à dire.
Est-il possible de faire la même chose avec les frames ?
A+
Exploreur
cs_Cako19
Messages postés56Date d'inscriptionmardi 4 février 2003StatutMembreDernière intervention 5 décembre 2005 20 avril 2005 à 10:57
C'est vraiment génial !!
Mais est-il possible de rendre transparent un ActiveX ou une listView aussi ?
Est ce que le message WM_CTLCOLOR pourrait être utile dans ce cas ?
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 29 mars 2005 à 09:30
greffer un fonctionement qui n'est pas le sien sur des controles n'est jamais anodin...
pas de solution en vue pour la scollbar.
VB n'est pas le langage le mieux approporié pour ce genre de manipulations, desolé...
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 26 mars 2005 à 00:35
salut,
je viens encore de regarder, plus précisément le TXT :
sans doute au niveau du rafraichissement, mais quand on écrit sur une ligne déjà saisie, il réécrit par dessus (au lieu de décaler le texte), ensuite il rend invisible (pas à chaque fois) le texte sélectionné en multiligne.
Aussi, en ajoutant un contrôle, il foire forcément un autre des éléments existants.
si deux contrôles se chevauchent, c'est la gueguerre à celui qui clignotera le mieux.....
et évidemment, çà ne fonctionne que sur des contrôles ayant un hWnd.
désolé d'insister... une solution alternative pour la scrollbar?
en l'attente ;)
PCPT
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 23 mars 2005 à 17:31
Salut,
ouai, joli, mais trop long à charger sans carte graphique en AGP...
et pas de EndIf en sortie...
RenField, y'a t'il une solution pour rendre la ScrollBar transparente sans Subclassing, et sans utiliser ta DLL...
merci ;)
PCPT
cs_JLN
Messages postés371Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention17 juin 2013 6 févr. 2005 à 11:40
Comme dab je suis toujours admiratif devant ton code !
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 24 sept. 2004 à 17:56
par par ce biais là.... le message n'est pas géré...
c'est cependant possible, je développe d'ailleurs un 'ReyRichTextBox' (partie de mes controles V2) qui inclue nottamment la possibilité de la rendre transparente.
pondpond
Messages postés14Date d'inscriptionmercredi 28 mai 2003StatutMembreDernière intervention 1 août 2005 24 sept. 2004 à 16:46
Par exemple un textbox.
D'après ce que j'ai compris, ce n'est pas possible pour les RichTextbox ?
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 23 sept. 2004 à 23:24
J'avoue ne pas saisir ta question....
quel type de controle souhaites-tu ajouter ?
pondpond
Messages postés14Date d'inscriptionmercredi 28 mai 2003StatutMembreDernière intervention 1 août 2005 23 sept. 2004 à 19:03
Comment adapter des contrôles que l'ont veut ajouter pour qu'il n'y aie pas de bug d'affichage. J'ai remarqué que les contrôles déjà présents dans l'exemple n'étaient ni au premier plan, ni au second.
Mais je ne sais pas comment faire pour reproduire cette propriétée ...
Source très interressante en tout cas.
Bravo et merci d'avance pour votre aide.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 3 mai 2004 à 06:29
'Lut...
voir deuxieme commentaire sur le source :
Indication : Si vous obtenez l'erreur "ne peut créer l'objet", ouvrez une fenêtre DOS, placez-vous dans le répertoire de l'application et tapez
RegSvr32 Rey_SubClasser.dll
OU
Demarrer > Executer
tu tapes regsvr32
tu fais glisser la Dll dans la fenetre "Executer"
et tu fais OK
Arnor2000
Messages postés32Date d'inscriptionmercredi 17 mars 2004StatutMembreDernière intervention24 novembre 2004 3 mai 2004 à 04:57
Pourquoi j'ai une erreur "429" : Le composant ActiveX ne peut créer l'objet et ca pointe sur
Set SubClasser = New ReySubClasser
dans la procédure Attach
Il n'as pas l'air de connaitre ReySubClasser
Ca me fait ca direct au lancement
Merci de votre aide
rhabib
Messages postés96Date d'inscriptiondimanche 25 janvier 2004StatutMembreDernière intervention22 février 2008 31 janv. 2004 à 20:15
il ne marche pas ton code ?
bubble44
Messages postés200Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention 3 août 2004 29 janv. 2004 à 19:20
Moi avec cette version, quand je quitte ca me fait un
"Erreur d"execution '91' :
Variable objet ou variable bloc With non définie
seulement quand je cree un .exe, en interprété ca marche.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 18 janv. 2004 à 15:32
Bonne remarque....
j'ai integré cette modification dans le Zip ;)
ennixo
Messages postés224Date d'inscriptionsamedi 25 janvier 2003StatutMembreDernière intervention17 juin 2006 18 janv. 2004 à 15:15
carrément génial !
bravo pour cette oeuvre
j'ai ajouté un SetStretchBltMode HALFTONE avant le stretchblt pour que le resize soit beau.
dans les déclarations de Module1.bas ajoutez
Public Declare Function SetStretchBltMode Lib "gdi32" (ByVal hdc As Long, ByVal nStretchMode As Long) As Long
Public Const HALFTONE = 4
dans le Form_Resize de Form1.frm ajoutez
SetStretchBltMode Me.hdc, HALFTONE
au début et virez Me.Cls (car on retrace par dessus) et Me.Redraw (car la propriété est déjà définie comme True)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 16 janv. 2004 à 20:30
Je vais jeter un oeil
shadowmoy
Messages postés340Date d'inscriptionjeudi 25 juillet 2002StatutMembreDernière intervention25 août 2007 16 janv. 2004 à 18:35
nop c'est idem pour moi mais d'apres moi je pense qu'il faux ajouter des messages a subclasser genre WM_char etc ...
jmocaro
Messages postés14Date d'inscriptionmardi 25 mars 2003StatutMembreDernière intervention19 octobre 2007 15 janv. 2004 à 09:43
un bravo de plus ! j'ai joué avec le surclassement, c'est difficile à mettre au point !
Je note un ptit hic: le pagedown sur le textbox qui laisse une zone blanche, est-ce propre à ma machine ?
jmo
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 15 janv. 2004 à 06:17
Seul hic !! MSDN le spécifie clairement ! le controle RTB ne prends pas en charge ce message..... il va faloir chercher davantage, et ainsi pourvoir refaire un petit MSN Messenger ;)
Merci Fraggy ;)
cs_Fraggy
Messages postés95Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 2 juin 2010 15 janv. 2004 à 04:16
10/10 mais est-ce vraiment nécéssaire de commenter ton travail ?
Tu sais tout le bien que j'en pense. Si jétais Bilou, je débourserais une fortune pour t'avoir dans ma team de designer !! Heureusement
ont à toujours l'exclusivité (pour le moment) ;-)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 11 janv. 2004 à 02:57
étrange...... chez moi pas la moindre vague.... ca doit dépendre de ta machine.....
j'ai tésté sous 98 et NT, ca fonctionne.....
j'ai ajouté la prise en charge de davantage des controles (ListBoxes et ScrollBars)
Tout tourne autour du message WM_CTLCOLOREDIT en effet, j'ai lu dans MSDN qu'il renvoyait le BRUSH a utiliser en fond du textbox..... je me suis pas fait prier pour me dire que je pourrait créer mon propre Brush : une image de ce qui est sous le controle...... je vais encore modifier mon code pour pouvoir spécifier une image de fond !!
shadowmoy
Messages postés340Date d'inscriptionjeudi 25 juillet 2002StatutMembreDernière intervention25 août 2007 11 janv. 2004 à 02:51
ca fonctionne sauf que le texte clignotte qd je tape qq chose meme avec les lockwindowsupdate :o/ une idée ?
cs_max12
Messages postés1491Date d'inscriptiondimanche 19 novembre 2000StatutModérateurDernière intervention 7 juillet 2014 10 janv. 2004 à 23:26
Ouais ouais sa marche :D Pas sous les RTFs malheureusement mais sa marche
@+
Lavieillefolle
Messages postés23Date d'inscriptionjeudi 7 août 2003StatutMembreDernière intervention12 avril 2004 10 janv. 2004 à 18:16
PROGRAMMIX je crois que le probleme est ton os, je ne lai tester sous mon xp. Mais je sais que ds xp ya un module de transparence intégrer voila p-e pourquoi. Sinon je sais que c'est possible tout de meme sous vb98 par exemple XCHAT on peut donner de la transparence et meme une teinte. C'est un programme open sources donc vous pouvez toujour fouillez ;D
cs_Dede
Messages postés61Date d'inscriptionmercredi 2 janvier 2002StatutMembreDernière intervention24 juillet 2006 10 janv. 2004 à 18:05
Grévindiou, c'est bô !!!
Rien à dire, yen a qui maitrisent.
Bravo.
Dede.
cs_legion91
Messages postés216Date d'inscriptionmercredi 5 février 2003StatutMembreDernière intervention15 décembre 2010 9 janv. 2004 à 19:31
Bon k dire.....c'est encore une merveille, simple et utile bon ben 10/10
cs_PROGRAMMIX
Messages postés1133Date d'inscriptionmercredi 2 octobre 2002StatutMembreDernière intervention24 juillet 20112 9 janv. 2004 à 16:59
Ca n'a pas l'air de fonctionner chez moi...
Je tourne sous Win98 SE et VB6 SP5...
CrazyMan19
Messages postés163Date d'inscriptionsamedi 2 août 2003StatutMembreDernière intervention 4 novembre 201315 9 janv. 2004 à 11:59
Bravo Renfield c est vraiment sympa 10/10
Afyn
Messages postés608Date d'inscriptionsamedi 3 août 2002StatutMembreDernière intervention22 décembre 2016 9 janv. 2004 à 09:26
-> je me demande même si je vais pas lui refiler du boulot, j'arrive pas être aussi productif.
En tous cas beau travail.
Afyn
NAVEDAC.
cs_radada
Messages postés488Date d'inscriptionlundi 15 septembre 2003StatutMembreDernière intervention21 avril 20091 9 janv. 2004 à 08:12
Trop joli. Champion Renfield ; )
Mais tu ne dors jamais pour faire autant de source ou quoi?? : D : D
10/10
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 9 janv. 2004 à 07:38
Merci.
C'est vrai que je devrai faire le ménage dans les API que je déclares pendant que je développe.... on fait des tests, on essaies, et au final....
Jack, je comprends pas tout a fait ce que tu obtiens avec le textbox singleline..... chez moi (et chez un "cobaille") ca marche tout a fait bien...
Je vais surement fournir le code de ma Dll, puisque je vais m'en servir davantage encore.....
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 9 janv. 2004 à 05:38
Pas mal en effet, mais c'est dommage qu'on n'ai pas le code de la dll de Subclassing, et qu'est-ce que c'est que toute ces api déclarées ? Tu ne les utilise pas toute !
8/10
DarK Sidious
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 9 janv. 2004 à 02:48
Salut RenField
Comme d'habitude, rien à dire.
Peut en effet être très pratique pour les bidouilleurs de skins.
- Astucieux le Key avec le hwnd !
- Ta function Min dans le module qui ne sert pas et qui est mignone comme tout ! Comme quoi les choses simples ...
- Pas moins de 40 apis (la folie !). En tous les cas, on sent le mec qui maîtrise ! parce que ne serait-ce pour un détail : en mode d'exécution ligne par ligne, il n'y a pas de résultat visible puisque l'objet sélectionné n'est pas la forme, mais la page de code blanche sur laquelle on vient de s'arrêter pour mater le code --> mise au point n'a pas dû être facile ! Encore bravo.
- pour l'esthétisme ... (cf précédent commentaire) c'est la picture qui va t'apporter la sympathie des lecteurs, lol
Indication : Si vous obtenez l'erreur "ne peut créer l'objet", ouvrez une fenêtre DOS, placez-vous dans le répertoire de l'application et tapez
RegSvr32 Rey_SubClasser.dll
vala
Jack (je suis fan de RenField)
cs_AbriBus
Messages postés492Date d'inscriptionjeudi 28 août 2003StatutMembreDernière intervention25 avril 20075 9 janv. 2004 à 00:22
Pour l'interet estétique... => 10
Sympa l'effet... ;-)
8 mars 2009 à 07:59
(3 Jours que je cheche une source pareille).
Thank You ! =D
22 oct. 2007 à 22:02
J'utiliserai unload me maintenant :)
Merci pour toutes ces informations, si j'ai d'autres questions j'irai sur le forum au lieu de spoiler ta source, désolé pour ça, et bonne continuation, ça fait plaisir de voir des gens qui sont à fond dans ce qu'ils font et gentils comme ça! :)
22 oct. 2007 à 05:55
19 oct. 2007 à 23:56
mais je ne comprends pas pourquoi ça fonctionnait avant avec END dans l'editeur, et pas avec le .exe.
J'ai une idée, mais pas entière :)
Merci infiniment à tous les deux en tout cas, ainsi qu'à tous les gens qui font vivre cet excellent site!
19 oct. 2007 à 23:41
END est incorrect, remplace par unload me
19 oct. 2007 à 23:20
fermer par la croix en haut à gauche, ça marche encore, mais il me faudrait ce bouton, quelqu'un sait s'il y a une manière différente de fermer un programme d'une autre que "end"?
Merci :)
19 oct. 2007 à 23:01
J'ai un bouton "quitter" dans mon programme, quand j'appuie dessus, bon je fais "end", et puis c'est fini.
Quand je fais ça dans l'éditeur, avec vb6.0, tout marche impec, mais dès que je fais un .exe, et que j'appuie sur le bouton quitter, le programme plante (il me bouffe mon CPU pour rien, et rien ne bouge).
Une idée quelqu'un? >_<
19 oct. 2007 à 20:36
C'est encore mieux qu'avant, super !
J'ai réussi à l'intégrer dans mon programme aussi, tout marche impec maintenant, merci! :)
Il ne me manque plus qu'à commencer à apprendre à programmer maintenant... *_*
Dommage que je ne puisse pas revoter pour te mettre 10/10 ;)
A bientôt
19 oct. 2007 à 11:44
dll supprimée, plus besoin d'elle...
davantage de fichiers, mais chaque chose est désormais a sa place.
en cliquant dans le fond de la form, l'image de fond change.
19 oct. 2007 à 10:20
Je ne connaissais pas cette commande (j'en connais peu, j'ai commancé le visual basic il y a un peu plus d'une semaine, et je n'ai que peu (ou pas) de sources de lecture).
Je vais étudier le plus possible des codes que je trouve ici pour voir de nouvelles commandes.
Merci beaucoup :)
19 oct. 2007 à 09:55
testé ca fonctionne. actuellement, je modernise le code...
19 oct. 2007 à 01:24
Le refresh ne fait, ici, rien du tout. (si on fait le refresh seul, ça ne donne rien, si on le fait après avoir tenté de "re-rendre" la boîte transparente, ça reste blanc, et si on le fait avant, ça ne donne rien de mieux.)
Peut être je me trompe dans ma façon d'utiliser la fonction.
J'ai utilisé le
Private Declare Function SetStretchBltMode Lib "gdi32" (ByVal hdc As Long, ByVal nStretchMode As Long) As Long
Private Const HALFTONE = 4
Dim TransparentControl As Class_TransparentControl
Private Sub Form_Load()
Set TransparentControl = New Class_TransparentControl
TransparentControl.Attach Text1
TransparentControl.UpdateBackGround Text1
End Sub
comme dans ton programme, puis dans un sub, après avoir appuyé sur le bouton pour changer l'arrière plan:
Me.Picture = LoadPicture("nature1.jpg")
TransparentControl.Attach Text1
TransparentControl.UpdateBackGround Text1
SetStretchBltMode Me.hdc, HALFTONE
Text1.Refresh
Voili voili, si vous trouvez une erreur débile (et il y en a peut être une, je débute...), et que vous pouvez m'aiguiller, ça serait très sympa :)
Je vais réfléchir sur la question de mon côté :)
19 oct. 2007 à 00:34
Je vais essayer de plancher dessus pour voir d'où ça vient, car j'aimerais bien pouvoir changer l'arrière plan tout en gardant la textbox transparente :)
Merci Renfield, et encore une fois, super code :)
18 oct. 2007 à 22:21
18 oct. 2007 à 21:21
Mais j'ai un problème, j'ai transposé ton code, et il marche, il m'affiche bien mes fichiers texte transparents, seulement si j'essaie de changer l'image de fond de ma form, l'ancienne image reste gravée dans le text, et si j'essaie de réappliquer le procédé de transparence, rien de ne passe.
Quelqu'un aurait il une idée de comment il faut s'y prendre?
Merci :)
16 oct. 2007 à 12:48
Projet > References
++
16 oct. 2007 à 11:47
2 mai 2007 à 10:11
Merci
1 mai 2007 à 13:58
30 avril 2007 à 17:39
j'ai enregistré la dll et j'ai juste lancer le code par defaut.
mais je vais tester sur une autre machine.
30 avril 2007 à 13:00
30 avril 2007 à 11:48
lors du 2° appel de ta fonction Attach, j'obtiens l'erreur suivante:
"Cette clé est déjà associée à un élément de cette collection"
Peux tu me dire d'ou vient l'erreur?
23 oct. 2006 à 22:46
23 oct. 2006 à 21:14
Private Declare Function RedrawWindow Lib "user32.dll" (ByVal hwnd As Long, ByRef lprcUpdate As Any, ByVal hrgnUpdate As Long, ByVal fuRedraw As Long) As Long
et dans ton code, par exemple :
RedrawWindow Me.hWnd, byval 0&, 0&, RDW_INVALIDATE
23 oct. 2006 à 18:18
23 oct. 2006 à 08:26
22 oct. 2006 à 19:46
22 oct. 2006 à 18:34
ca doit être pour forcer le raffraichissement
un appel à RedrawWindow doit suffire
22 oct. 2006 à 01:32
Cela dit je n'ai pas compris pourquoi il faut redimensionner les contrôles pour qu'ils acquierrent la transparence ^o)
1 sept. 2006 à 14:31
Est-il possible de faire la même chose avec les frames ?
A+
Exploreur
20 avril 2005 à 10:57
Mais est-il possible de rendre transparent un ActiveX ou une listView aussi ?
Est ce que le message WM_CTLCOLOR pourrait être utile dans ce cas ?
29 mars 2005 à 09:30
pas de solution en vue pour la scollbar.
VB n'est pas le langage le mieux approporié pour ce genre de manipulations, desolé...
26 mars 2005 à 00:35
je viens encore de regarder, plus précisément le TXT :
sans doute au niveau du rafraichissement, mais quand on écrit sur une ligne déjà saisie, il réécrit par dessus (au lieu de décaler le texte), ensuite il rend invisible (pas à chaque fois) le texte sélectionné en multiligne.
Aussi, en ajoutant un contrôle, il foire forcément un autre des éléments existants.
si deux contrôles se chevauchent, c'est la gueguerre à celui qui clignotera le mieux.....
et évidemment, çà ne fonctionne que sur des contrôles ayant un hWnd.
désolé d'insister... une solution alternative pour la scrollbar?
en l'attente ;)
PCPT
23 mars 2005 à 17:31
ouai, joli, mais trop long à charger sans carte graphique en AGP...
et pas de EndIf en sortie...
RenField, y'a t'il une solution pour rendre la ScrollBar transparente sans Subclassing, et sans utiliser ta DLL...
merci ;)
PCPT
6 févr. 2005 à 11:40
24 sept. 2004 à 17:56
c'est cependant possible, je développe d'ailleurs un 'ReyRichTextBox' (partie de mes controles V2) qui inclue nottamment la possibilité de la rendre transparente.
24 sept. 2004 à 16:46
D'après ce que j'ai compris, ce n'est pas possible pour les RichTextbox ?
23 sept. 2004 à 23:24
quel type de controle souhaites-tu ajouter ?
23 sept. 2004 à 19:03
Mais je ne sais pas comment faire pour reproduire cette propriétée ...
Source très interressante en tout cas.
Bravo et merci d'avance pour votre aide.
3 mai 2004 à 06:29
voir deuxieme commentaire sur le source :
Indication : Si vous obtenez l'erreur "ne peut créer l'objet", ouvrez une fenêtre DOS, placez-vous dans le répertoire de l'application et tapez
RegSvr32 Rey_SubClasser.dll
OU
Demarrer > Executer
tu tapes regsvr32
tu fais glisser la Dll dans la fenetre "Executer"
et tu fais OK
3 mai 2004 à 04:57
Set SubClasser = New ReySubClasser
dans la procédure Attach
Il n'as pas l'air de connaitre ReySubClasser
Ca me fait ca direct au lancement
Merci de votre aide
31 janv. 2004 à 20:15
29 janv. 2004 à 19:20
"Erreur d"execution '91' :
Variable objet ou variable bloc With non définie
seulement quand je cree un .exe, en interprété ca marche.
18 janv. 2004 à 15:32
j'ai integré cette modification dans le Zip ;)
18 janv. 2004 à 15:15
bravo pour cette oeuvre
j'ai ajouté un SetStretchBltMode HALFTONE avant le stretchblt pour que le resize soit beau.
dans les déclarations de Module1.bas ajoutez
Public Declare Function SetStretchBltMode Lib "gdi32" (ByVal hdc As Long, ByVal nStretchMode As Long) As Long
Public Const HALFTONE = 4
dans le Form_Resize de Form1.frm ajoutez
SetStretchBltMode Me.hdc, HALFTONE
au début et virez Me.Cls (car on retrace par dessus) et Me.Redraw (car la propriété est déjà définie comme True)
16 janv. 2004 à 20:30
16 janv. 2004 à 18:35
15 janv. 2004 à 09:43
Je note un ptit hic: le pagedown sur le textbox qui laisse une zone blanche, est-ce propre à ma machine ?
jmo
15 janv. 2004 à 06:17
Merci Fraggy ;)
15 janv. 2004 à 04:16
Tu sais tout le bien que j'en pense. Si jétais Bilou, je débourserais une fortune pour t'avoir dans ma team de designer !! Heureusement
ont à toujours l'exclusivité (pour le moment) ;-)
11 janv. 2004 à 02:57
j'ai tésté sous 98 et NT, ca fonctionne.....
j'ai ajouté la prise en charge de davantage des controles (ListBoxes et ScrollBars)
Tout tourne autour du message WM_CTLCOLOREDIT en effet, j'ai lu dans MSDN qu'il renvoyait le BRUSH a utiliser en fond du textbox..... je me suis pas fait prier pour me dire que je pourrait créer mon propre Brush : une image de ce qui est sous le controle...... je vais encore modifier mon code pour pouvoir spécifier une image de fond !!
11 janv. 2004 à 02:51
10 janv. 2004 à 23:26
@+
10 janv. 2004 à 18:16
10 janv. 2004 à 18:05
Rien à dire, yen a qui maitrisent.
Bravo.
Dede.
9 janv. 2004 à 19:31
9 janv. 2004 à 16:59
Je tourne sous Win98 SE et VB6 SP5...
9 janv. 2004 à 11:59
9 janv. 2004 à 09:26
En tous cas beau travail.
Afyn
NAVEDAC.
9 janv. 2004 à 08:12
Mais tu ne dors jamais pour faire autant de source ou quoi?? : D : D
10/10
9 janv. 2004 à 07:38
C'est vrai que je devrai faire le ménage dans les API que je déclares pendant que je développe.... on fait des tests, on essaies, et au final....
Jack, je comprends pas tout a fait ce que tu obtiens avec le textbox singleline..... chez moi (et chez un "cobaille") ca marche tout a fait bien...
Je vais surement fournir le code de ma Dll, puisque je vais m'en servir davantage encore.....
9 janv. 2004 à 05:38
8/10
DarK Sidious
9 janv. 2004 à 02:48
Comme d'habitude, rien à dire.
Peut en effet être très pratique pour les bidouilleurs de skins.
- Astucieux le Key avec le hwnd !
- Ta function Min dans le module qui ne sert pas et qui est mignone comme tout ! Comme quoi les choses simples ...
- Pas moins de 40 apis (la folie !). En tous les cas, on sent le mec qui maîtrise ! parce que ne serait-ce pour un détail : en mode d'exécution ligne par ligne, il n'y a pas de résultat visible puisque l'objet sélectionné n'est pas la forme, mais la page de code blanche sur laquelle on vient de s'arrêter pour mater le code --> mise au point n'a pas dû être facile ! Encore bravo.
- pour l'esthétisme ... (cf précédent commentaire) c'est la picture qui va t'apporter la sympathie des lecteurs, lol
Indication : Si vous obtenez l'erreur "ne peut créer l'objet", ouvrez une fenêtre DOS, placez-vous dans le répertoire de l'application et tapez
RegSvr32 Rey_SubClasser.dll
vala
Jack (je suis fan de RenField)
9 janv. 2004 à 00:22
Sympa l'effet... ;-)