IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

[VB6] Scrollbar dans une frame avec des textbox


Sujet :

VB 6 et antérieur

  1. #21
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Voilà, j'ai pu regarder ton projet Aïe ! Tu as deux sortes de frame une xy et une xyz
    Remplace celle que tu as utilisée par une frame xyz et là, miracle, non seulement tu pourras avoir un ascenseur intégré à ton cadre mais tu auras ainsi Aïe ! toutes les propriétés dont je, nous, on... t'avons parlé...

    Maintenant, tu relis tous les bons conseils donnés et tu nous dis où tu en es. Mais après...

    10 minutes pour ouvrir ton projet (ouverture boîte aux lettres, récup du fichier, extraction par internet, sauvegarde...) 1 minute pour comprendre... Aïe !

    A+ je compte sur toi pour nous raconter la suite de l'histoire

  2. #22
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    Ou tu vois x,y,z?

  3. #23
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    Ah c'est bon j'ai vu.

    Mais dans celle xyz, on ne peut pas integrer des contrôles c'est pour cela que j'avais utilise celle x,y.

  4. #24
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Ça fait bien cinq minutes que je me suis (re)mis à VB et la dernière fois que j'y ai mis les pieds, c'était en 1995 ou seize...
    Tu mets bien tes textbox en dynamique ? Alors essaie ce code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Form_Load()
         Set Mycmd = Frame1.Controls.Add("Forms.TextBox.1") ', Text1, Visible)
        Mycmd.Left = 18
        Mycmd.Top = 150
        Mycmd.Width = 175
        Mycmd.Height = 20
        Mycmd.Text = "C’est amusant." & Mycmd.Name
    End sub
    A+

    Edit
    Très largement inspiré de l'aide à "add."

  5. #25
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    Ton code créer bien une textbox.

    Mais si je fais cela je n'ai plus besoin de faire deux frame alors?

    Tu peux m'expliquer la Syntaxe du controls.Add?

  6. #26
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Mais si je fais cela je n'ai plus besoin de faire deux frame alors?
    Effectivement
    Tu peux m'expliquer la Syntaxe du controls.Add?
    ? Je t'ai donné la syntaxe, pour des explications approfondies, je ne ferais pas mieux que l'aide en ligne...
    Au fait je ne t'ai pas dit, l'aide, tu peux l'avoir en sélectionnant le code et en faisant
    Excuse... j'ai pas pu m'en empêcher. Mais que cela ne te décourage pas de poser des questions... Que n'as-tu pas compris ?

    A+

  7. #27
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    le "Forms.textBox.1", forms je suppose que c'est le formulaire, ensuite Textbox soit c'est le nom du controle ou le type deu controles? et le 1 ??

    Car si je fais par exemple avec une textbox appellé Text1 et qu'elle à un index i comment faire?

    Merci d'avance

  8. #28
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Set Mycmd = Frame1.Controls.Add("Forms.TextBox.1") ', Text1, Visible)
    Ok, je décortique : Textbox est le type de contrôle que tu ajoutes, Text1 est le nom que je lui ai donné.
    Quant à 1, je sais déjà qu'avec 2, ça marche pas (!)
    Je vais aller voir dans l'aide

    A+

    Edit
    J'ai fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
        Set Mycmd = Frame1.Controls.Add("Forms.TextBox.1") ', Text1, Visible)
        Mycmd.Left = 18
        Mycmd.Top = 150
        Mycmd.Width = 175
        Mycmd.Height = 20
        Mycmd.Text = "C’est amusant." & Mycmd.Name
        Set Mycmd = Nothing
        Set Mycmd = Frame1.Controls.Add("Forms.TextBox.1") ', Text2, Visible)
        Mycmd.Left = 18
        Mycmd.Top = 200
        Mycmd.Width = 175
        Mycmd.Height = 20
        Mycmd.Text = "C’est de plus en plus amusant." & Mycmd.Name
        Set Mycmd = Nothing
    et j'ai ainsi deux textbox l'un en dessous de l'autre
    Pour 1, jète un coup d'oeil dans l'aide à Index

  9. #29
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    Non ce n'est pas mon prblème mon problème c'est la scrollbar.

    Et les picturebox, j'en est besoin pour le centrage horizentalement Car avant javais :


    ________
    |'''''text1''''''|
    |'''''''''''''''''''''|
    |________|

    Et maintenant j'ai :


    ________
    |''''''''''''''''''''''|
    |''''''text1'''''|
    |________|



    Grâce à la picturebox.

    Donc c'est la scrollbar mon problème.

    Ps : ça ' sa veut dire espace.

  10. #30
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Comprends pas !
    Si tu veux que le premier Textbox soit à une cetaine distance du sommet, modifie la valeur de la propriété Top de ton textbox à 150, par exemple. Regarde le code que je t'ai donné. Mycmd.Top = 150

    A+

  11. #31
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    Mais Est-ce que je peux créer une picturebox qui a une textbox à l'interieur, avec le code que tu ma fourni?

  12. #32
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Non !
    L'objet ne gère pas cette propriété ou cette méthode...
    est le message que j'obtiens si je fais ça.

    Quant à Picture, je ne l'ai pas dans la liste des contrôles que voilà pouvant être ajouter avec Add
    Extrait de l'aide :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    CheckBox	Forms.CheckBox.1
    ComboBox	Forms.ComboBox.1
    CommandButton Forms.CommandButton.1
    Frame	   Forms.Frame.1
    Image	   Forms.Image.1
    Label	   Forms.Label.1
    ListBox	 Forms.ListBox.1
    MultiPage  Forms.MultiPage.1
    OptionButton  Forms.OptionButton.1
    ScrollBar  Forms.ScrollBar.1
    SpinButton Forms.SpinButton.1
    TabStrip   Forms.TabStrip.1
    TextBox    Forms.TextBox.1
    ToggleButton
    Tu es allé dans l'aide ?

    A+

  13. #33
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    Oui,


    j'ai trouvé un bout de code pour ajouter une picturebox dynamiquement, mais c'est dans une form :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Form2.Controls.Add "VB.PictureBox", "NewPictureBox", Form2
     
    Set MonPictureBox = Form2!NewPictureBox
     
    With MonPictureBox
            .Visible = True
            .Top = 10
            .Left = 0
            .Width = 4000
            .Height = 2000
            .BackColor = vbRed
    End With
    Je n'ai pas tester avec une frame.

  14. #34
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Dans une "PictureBox" placée dans un cadre, j'ai l'erreur déjà cité : "L'objet ne gère pas cette propriété ou cette méthode..."
    On ne peut, au moins de cette façon, ajouter un textbox dans un pictureBox placé dans un cadre...
    Que veux-tu que je te dise de plus.
    Si quelqu'un a la solution... je suis toujours preneur.
    Ceci dit, j'ai compris, tu n'as pas l'aide... mais regarde au moins la liste que je t'ai donnée...

    A+

  15. #35
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Salut

    Moi, ce que je n'arrive pas à comprendre, c'est l'obligation (que tu as) d'insérer tes TextBox dans des PictureBox. Quelle en est l'utilité? Est-ce bien indispensable?

  16. #36
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    L'utilité d'inserer les textbox à des picturebox, c'est que je peux mettre le texte de ma textbox centré verticalement.

    En faisant le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        Picture1(Index).Width = Text1(Index).Width
        Text1(Index).Left = 5 'bordures
        Text1(Index).Top = Picture1(Index).Height / 2 - Text1(Index).Height / 2
    Volià, mais bon si vous avez une autre solution pour que se soit centré verticalemen, je suis preneur.

  17. #37
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Une autre solution ? Bien sûr. Tu connais le principe des piquets et des intervales ? Tu as un intervale de plus que de piquets. Tu soustrais la hauteur de tes textbox de la hauteur de ton cadre et tu divises par le nombre de textbox + 1.
    Ainsi, tu as l'intervale, ou si tu préfères le décalage en y de chaque textbox...
    Je croyais que tu voulais centrer horizontalement sinon je te l'aurais conseillé plus tôt
    Vendredi 24 à 15:57 tu disais :
    Et les picturebox, j'en est besoin pour le centrage horizentalement Car avant javais :
    Tu essaies et tu nous dis

    A+
    Edit
    Si tu ajoutes des textbox en hauteur, tu peux faire le repositionnement en dynamique.

  18. #38
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    Euh oui effictevement, j'avais fait une faute.
    Sinon si j'ai bien compris tu fais (Text1.Height - Tex1.TextHeight) / nombre textbox + 1. ???

  19. #39
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Sauf que tu as oublié l'essentiel

    intervale = (Frame1.height - (Text1.Height + Tex2.Height + Tex3.height + ...) ) / (NbretTxtBox + 1)
    J'ai mis des parenthèses partout pour m'éviter de réfléchir... Mais là, je suis sûr.

    A+
    Edit
    Travaille les arrondis, des moitiés de pixel, je ne sais pas si ça passe

  20. #40
    Membre régulier
    Inscrit en
    Octobre 2004
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 277
    Points : 76
    Points
    76
    Par défaut
    Alors il faut que je fasse ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    intervale = (Frame1.Height - (Text1(Index).Height) / (Text1.Count + 1))
    ou cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    intervale = (Frame1.Height - (Text1(Index).Height + Text2(Index).Height) / (Text1.Count +Text2.Count + 1) )
    Ps : Je n'est que deux TextBox , Text1 et Text2.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. Critères avec opérateurs dans une requête avec des champs calculés
    Par lmollard dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 11/05/2008, 18h53
  2. [Struts] reset dans une ActionForm avec des int
    Par mariemor64 dans le forum Struts 1
    Réponses: 19
    Dernier message: 18/05/2006, 12h47
  3. [SQL] Requête dans une requête...avec des INNER JOIN!
    Par PedroBD dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 06/04/2006, 08h26
  4. rollover dans une image avec des zones cliquables
    Par brasco06 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 23/02/2006, 11h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo