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

VBA Discussion :

probleme d'affichage (rafraichissement ecran sur un userform et (frame/listbox)


Sujet :

VBA

  1. #21
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Tu veux le voir, ce "coucou" ?
    diminue les dimensions de la listbox :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    .Width = Frame1.Width - 20
    .Height = Frame1.Height - 20
    Et il y a mieux à faire.
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  2. #22
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    ben oui j'ai déjà essayé c'est pour ca que je me suis rendu compte de ton erreur d'interprétation

    la frame c'est quand même le but non ?au moins pour la scroll horizontale

    mais problème si je met la list plus petite on a 2 scrolls horizontales

    je crois que la meilleur solution c'est de mémoriser la liste dans un e variable tableau et de vider la listbox et au scroll de la frame mettre uniquement le redim préserve de la liste correspondant a la colonne et ligne comme je le fait avec le combofake c'est la seul solution je crois

    oh! purée ca m'a fait du bien merci
    edit:
    ho pop pop !!!!!!!!!!!!!!!!!!!!!!
    non il y a une autre solution suis je bête
    handle de la liste box
    set parent liste,frame
    createroundrect(handle liste,0,0 list..width-largeur scrollbar,list.heigh-hauteurscrollbars,angle0,angle 0)
    setwindowrect(handle list,0,0,x,y)
    c'est juste une thehorie je pense que c'est jouable
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  3. #23
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Points : 1 441
    Points
    1 441
    Par défaut
    bonjour,

    j'ai créé (dynamique) une frame1
    j'ai créé (dynamique) dans frame1 une listbox

    et çà fonctionne ...

    ce qu'il manque c'est de renommer ou supprimer (remove) la listbox en dur

    pour travailler sur le dur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Set myForm = ThisWorkbook.VBProject.VBComponents("USF")
    Set objLbx = myForm.designer.Controls("ListBox1")
    Set objFrm = myForm.designer.Controls("Frame1")
    le code dans USF

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    Dim objLbx As Object
    Dim objFrm As Object
     
    Private Sub UserForm_Activate()
     
        objLbx.Width = 400
        objLbx.Height = 450
     
        objFrm.Height = 100 '250
        objFrm.Width = 200 '450
     
        objFrm.ScrollBars = 3
        objFrm.ScrollWidth = objLbx.Width + 20
        objFrm.ScrollHeight = objLbx.Height + 20
     
        objFrm.Top = 10 'ok
        objFrm.Left = 10 'ok
    End Sub
     
    Private Sub UserForm_Initialize()
     
        Set objFrm = Me.Controls.Add("Forms.Frame.1", "Frame1")
        Set objLbx = Me.Controls("Frame1").Controls.Add("Forms.Listbox.1", "ListBox1")
     
        objLbx.List = Range("A1:E20").Value
        objLbx.ColumnCount = 5
        objLbx.ColumnWidths = "60pt;80pt;100pt;55pt;75pt"
        cl = Split(Replace(objLbx.ColumnWidths, "pt", ""), ";")
        ReDim colleft(UBound(cl))
        colleft(0) = 0
        For i = 0 To UBound(cl)
            x = x + Val(cl(i))
            If i < UBound(colleft) Then colleft(i + 1) = x
        Next
        objLbx.Top = 0
        objLbx.Left = 0
     
    End Sub
    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  4. #24
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonjour mjp

    tu n'a encore pas compris l'exercice en fait ce que tu viens de faire oui ca je l'ai fait déjà dans le cadre d'une substitution de la listbox originale dans une classe

    dans l'exercice en fait la listbox existe déjà !!!!! tu n'a pas a l'ajouter

    et il faut qu'elle devienne fille de la frame que tu ajoute dynamiquement

    tu croyais quand même pas que c'était aussi simple

    que veux tu moi j'aime les truc tordus

    @jacques j'ai essayé en creant juste la region in terieur de la frame
    et malheureusement ca coupe la liste box a cette taille et le déplacement de la scroll de la frame provoque toujours des disfonctionnement d'affichage
    c'est donc une piste exclu
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #25
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Points : 1 441
    Points
    1 441
    Par défaut
    bonjour,
    oui Patrick , j'ai bien compris ....

    mais ton SetParent ne fonctionne pas , pour contrôler , msgbox ListBox1.Parent.Name --> form

    l'idée était de cloner la listbox et de suprimer l'original

    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  6. #26
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re
    oui cloner ca je l'ai déjà tout fait dans une classe et j'ai même rapprocher les évènements liste clone/liste originale

    je l'ai fait vite fait hier pour le fun mais c'est un travail classique sans intérêt pour moi dans le sens ou quand je rencontre une difficulté

    comme celle la j'ai horreur de ne pas reussir si tant est que cela soit possible bien sur


    d'autre part et la je m'adresse a tous

    quand la liste et fille de la frame a la base bouger la scroll horizontale de la frame
    et regarder les bugs graphique que l'on voit (ligne blanche parasite que l'on voit descendre)

    il se trouve que dans le cadre du model ou j'ai couper la region je redresse l'affichage en sélectionnant tout les items l' un a la suite de l'autre

    j'ai la conviction que dans le model ou la liste est déjà fille de la frame il y a aussi rafraichissement de l'affichage l'ors du scroll de la frame
    ce n'est que des soupçons les plus costauds confirmeront ou infirmeront
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  7. #27
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    demonstaration de ces bug graphiques avec le model ou la liste est déjà fille de la frame donc sans api

    et dans la capture on vois même mieux le phénomène qu'avec l' œil humain les items disparaissent carrément

    Nom : demo12.gif
Affichages : 288
Taille : 341,2 Ko
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

Discussions similaires

  1. [Android] PROBLEME D AFFICHAGE D IMAGE SUR UNE ZONNE REPETE WINDEV MOBILE 18
    Par aderfat dans le forum Mon application mobile
    Réponses: 0
    Dernier message: 13/05/2015, 01h00
  2. Probleme d'affichage de clock sur Panel
    Par gilles06 dans le forum wxPython
    Réponses: 0
    Dernier message: 08/04/2014, 12h30
  3. Probleme d'affichage des couleurs sur navigateurs
    Par love-part dans le forum Windows XP
    Réponses: 0
    Dernier message: 04/01/2013, 11h34
  4. [AC-2003] probleme d' affichage de formulaire sur access 2007 et 2010
    Par cbleas dans le forum IHM
    Réponses: 0
    Dernier message: 22/11/2011, 07h51
  5. probleme d'affichage du flv sur mac
    Par korthex dans le forum Apple
    Réponses: 0
    Dernier message: 28/03/2008, 17h23

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