Textbox perso

vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022 - 11 janv. 2007 à 09:54
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 - 12 janv. 2007 à 09:34
Hello World ! J'aimerais savoir comment créer un scrollbar perso avec des images, et ce pour agir sur une textbox multiligne (à laquelle on rendrait invisible ses propres scroll )

J'ai pas trouvé de trucs comme ça...


Merci pour vos idées...


vegetalain

15 réponses

lilo44 Messages postés 174 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 15 février 2007 2
11 janv. 2007 à 10:16
hé bien .. C'est super clair cette histoire lol ^^
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
11 janv. 2007 à 10:41
Tu mets ta textbox à l'interieur d'un cadre et la déplaces suffisamment vers la droite pour cacher son ascenseur vertical
Tu ajoutes ensuite, là où tu le veux, ta "propre" scroll bar, que tu crées avec  2 images : son image "générale" avec, par dessus, son curseur...
Tu joues ensuite avec l'événement move de ce curseur pour déterminer la nouvelle position, à laquelle tu "lies" le déplacement vertical de ta textbox à l'intérieur de ton cadre....

Tout celà est fastoche au possible et complètement ridicule, mais....

C'est ton choix.... et qui fait à sa tête paye en général de son dos (vieux dicton) ...

Je t'ai donc donné les indications essentielles, mais tu vas jouer tout seul à ce jeu là, ma foi ! 
Fais bien joujou !
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
11 janv. 2007 à 10:57
?? Mais qu'est-ce que c'est que cette réponse bizarre? primo tu n'as
pas à camoufler le scroll dans une picturebox, le scroll de la textbox
n'est pas affichable si on veux, et comment 'lier' le mouvement du
"faux-scroll" avec la textebox.?... Et ça veut dire quoi ce dicton venu
d'island???? (de trop loin pour que je le connaisse)... noel est encore
récent, le champagne doit résider à mon avis... mais merci kan meme de
cette non-réponse.
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
11 janv. 2007 à 11:04
Ce dicton  peut se traduire ainsi :

Un point A et un point B sur une carte, avec une magnifique route reliant, en ligne directe, A à B...
2 compères : Jacques et Pierre

Jacques dit à Pierre : "prenons cette route", mais Pierre ne veut pas et propose à Jacques de faire des quantités de détours, au seul prétexte que ce sera plus "beau...". Mais voilà...Pierre, qui ne sait pas s'orienter et craint de se perdre, demande à Jacques de l'accompagner dans cette aventure curieuse..
Jacques regarde Pierre et lui dit : excuse-moi, ami, mais si tu tiens absolument à faire ce chemin là, pour des raisons qui sont les seules tiennes et à des fins dont je ne vois personnellement pas lm'utilité... vas-y tout seul.... Je t'attendrai en B.

Ici, Jacques répète à Pierre : "en ce qui concerne la façon de "lier" la position du curseur à celle de la textbox, voilà une chose facile à réaliser avec l'événement Move du curseur, mais si celà t'échappe également", ma foi, tu devrais peut-être te contenter de ce qui est traditionnel.. plutôt que de réinventer l'eau chaude"
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
11 janv. 2007 à 11:20
Il ne te viendrait pas à l'idée de faire du drag and drop de ton "curseur maison", de voir quelle est sa nouvelle position au lâcher de souris, de calculer de combien (et dans quel sens) il a été déplacé... et de décider de déplacer d'autant ta textbox à l'intérieur de ton cadre ?

What will be the next question ? Qu'est un drag and Drop, peut-être ....
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
11 janv. 2007 à 11:25
Au fait : Et si tu n'aimes pas l'aspect des scrollbars : tu n'en as pas besoin du tout ! Tu peux toujours de servir du bouton droit à l'intérieur de ta textbox (sans même la placer dans un cadre), analyser la position de ton curseur et te servir d'un peu (vraiment peu) d'arithmétique et de selstart ....
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
11 janv. 2007 à 14:13
ok, nan mais c pas que je n'aime pas faire simple c juste que je fait
une interface graphique "non-windowzienne", et le scrollbar restait le
seul élément de type windows" sur l'interface !!! Mais ces infos me
seront utiles !!!!
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
11 janv. 2007 à 14:22
OK, ami "Pierre"...

Je veux bien te donner un coup de main malgré l'aspect totalement ludique de la chose, mais à une condition :

Tu me montres le code que tu as tenté de mettre en oeuvre (dons TES efforts pour faire TON détour... d'abord)

Une autre fois : tout celà est simple .
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
11 janv. 2007 à 14:29
Au fait (et pour le même prix) : ton curseur lui-même : si tu veux encore plus t'éloigner... : il serait bon de lui choisir une forme particulière ... Que penses-tu d'une petit coeur (bleu au repos et rouge pendant ses déplacements ? ) ou une forme encore plus compliquée, avec 2 couleurs au départ, les 2 étant modifiées lors du déplacement ? ... Tu dis que tu n'aimes pas les choses simples ... Alolrs vas-y jusqu'au bout ! Défoule-toii en toute démesure ! (et prends ton pied, hein ?)
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
11 janv. 2007 à 14:37
je suis au taf là. je compile ce soir le prog tel qu'il est et je
mettrais non pas les sources sur vbfrance (je suis pas sûr de la place
possible), mais sur mon site... ce que je mettrais sur vbfrance sera le
lien direct sur le .rar situé sur mon site !!
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
11 janv. 2007 à 17:26
voilà, j'ia mis en ligne ma source et le prog tels qu'ils étaient ce matin avant que j'aille bosser : http://www.vbfrance.com/code.aspx?ID=41068 !!
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
11 janv. 2007 à 17:28
oups, le mot de passe de l'appli c'est "xen", mais bon, on le voit avec les sources, et c juste pour délirer... kan meme, c le portable de Gman , faut pas blaguer avec ça, hihihi
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
11 janv. 2007 à 20:50
Ben voilà ! Il suffisait de le dire (que c'était pour faire le clown...)
Là, je comprends mieux et veux bien me mettre, si tu le souhaites, au travail :

Proposition : en lieu et place de scrollbars, la représentation, sous forme d'une petite image carrée), d'un pseudo "TouchPad" un peu particulier :

Je m'explique : les mouvements de la souris à l'intéreiur de cette surface "pseudo-touchpad" décideraient des déroulements horizontal et vertical de la textbox, mais inversés (donc quand on promène la souris au bord supérieur gauche  du carré, par exemple, on atteint la fin du text et pas le début, etc...). Voilà qui devrait compléter le scénario "portable de Gman, non ?
Tu dis.....
0
vegetalain Messages postés 747 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 11 août 2022
12 janv. 2007 à 09:15
Ben en fait alors j'ai bricolé ça hier soir avec pour base le truc "Len", ça vaut ce que ça vaut mais je pense être sur une bonne voie :D en tout cas chez moi ça à l'air de fonctionner, pour le moment.

'Text1 avec 30 lignes de texte et 8 lignes de visibles
'un bouton (name=TxtUp, caption = monter) + un timer (timerUpu, interval = 50)
'un autre bouton (name=TxtDown, caption = descendre) + un timer (timerDown, interval = 50)
'un label appelé Lignes, avec caption = 300

'ça fonctionne donc on dirait, mais il faut modifier les 300 en fonction du nbr de lignes. 200 pour 20 lignes, 300 pour 30 lignes, etc... donc il faut calculer le nbr de lignes affiché dans le txtbox puis en déterminer la caption de "lignes" etc....

'dans le text1.text j'ai mis ça :
Ligne 01
Ligne 02
Ligne 03
Ligne 04
Ligne 05
Ligne 06
Ligne 07
Ligne 08
Ligne 09
Ligne 10
Ligne 11
Ligne 12
Ligne 13
Ligne 14
Ligne 15
Ligne 16
Ligne 17
Ligne 18
Ligne 19
Ligne 20
Ligne 21
Ligne 22
Ligne 23
Ligne 24
Ligne 25
Ligne 26
Ligne 27
Ligne 28
Ligne 29
Ligne 30

...c bien pour se repérer :D, et donc une hauteur de 1695 (je suis en MS Sans Serif de 8) pour ne voir que les 8 premières lignes.

ze code : (bon, c du MacGyver mais ça le fait pour le moment...)

Private Sub Lignes_Change()
If Lignes.Caption > 300 Then Lignes.Caption = 300 '300 pour 30 lignes, sous-entendu, 200 pour 20 lignes...
If Lignes.Caption < 0 Then Lignes.Caption = 0
End Sub

Private Sub TxtDown_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)If Lignes.Caption 300 Then Lignes.Caption 230 (car 300 - 230 = 70, et y'a 8 lignes visibles (80 quoi + 10 de marge)...)
TimerDown.Enabled = True
End Sub
Private Sub TxtDown_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
TimerDown.Enabled = False
End Sub
Private Sub TimerDown_Timer()
Lignes.Caption = Lignes.Caption - 10
On Error Resume Next: Text1.SelLength = Len(Text1.Text) - Lignes.Caption
End Sub

Private Sub TxtUp_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)TimerUp.Enabled True: If Lignes.Caption 0 Then Lignes.Caption = 80
End Sub
Private Sub TxtUp_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
TimerUp.Enabled = False
End Sub
Private Sub TimerUp_Timer()
Lignes.Caption = Lignes.Caption + 10
On Error Resume Next: Text1.SelLength = Len(Text1.Text) - Lignes.Caption
End Sub

... voilà...
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
12 janv. 2007 à 09:34
C'est bien d'avoir cherché...

Mais tu devrais t'affranchir des contraintes (nb de lignes, police, etc...)
Regarde donc un peu à quoi servent TextWidth et TexHeight... et essaye de t'en servir, en correlation avec tes Text1.width et Text1.height 
Allez, courage ! (c'est juste de l'arithmétique appliquée)
0
Rejoignez-nous