Comment fermer une forme lorsqu'on clique en dehors

Re,

Tu m'as fait mon après-midi là heureusement que ça j'ai su...

Mais n'empêche

X Cellus,

Oui je pourrais utiliser un DropDown normal avec 4 colonnes.. A explorer. J'aime bien le Listview car il y a les entêtes des colonnes, la possibilité d'avoir le volet déroulant aussi large qu'on veut, et des petits détails du genre (c-à-d non critiques).

Mais il se peut que je doive me rabatttre là dessus, en effet!

BrunoM45,

Je crois avoir mal compris. Par Account tu voulais dire compagnie, et non pas compte utilisateur.. Alors s'il n'y a aucun Account, clique sur "New..." et en créant un Account bidon, tu auras accès à la forme en question en cliquant sur le petit carré noir au niveau du champ "Parent Account"...

Suite

Stefano.gatto,

Oui je pourrais utiliser un DropDown normal avec 4 colonnes.. A explorer. J'aime bien le Listview car il y a les entêtes des colonnes

Il est toujours possible de faire apparaître un label au-dessus personnalisé (comportant ces colonnes) en fonction de l'endroit où agit l'utilisateur.

Puis qu'il disparaisse s'il clique ailleurs.

ok, je testerai le dropdown.. je ne savais pas qu'on pouvait enclencher un label (une entête par colonne, entends-tu?)

suite,

Pour aller au plus simple, seulement un grand label de la taille habituelle des données contenues dans les colonnes.

Certaines étant plus grandes que d'autres. Le label contient habituellement du texte mais on peut aussi passer par une image (contenant le texte des en-têtes) mais l'ensemble pouvant ressembler à des pseudos-entêtes. En prenant par exemple copie sous forme d'image les en-têtes de la listView.

Ensuite en quittant le dropDown on n'affiche plus le label en le masquant (invisible).

Voici par exemple façon deuxième Listview

image

Merci pour l'explication XCellus!

Avec mon design, l'utilisateur peux régler la largeurs de ces 4 colonnes et les retrouver ces mêmes largeurs lors d'une session ultérieure. Ce comportement est similaire à celui du File Manager par exemple, ou d'Outlook, qui se souviennent de la largeur des colonnes d'une exécution à l'autre.

Ceci vous permet d'éviter de regler les largeurs des colonnes à chaque fois qu'on utilise un soft.

Si je suis exigeant, c'est pour le confort de mes utilisateurs... 😊

A nouveau,

Stefano.gatto

Mais on peut toujours paramétrer les largeurs de colonnes d'un ComboBox en fonction de l'utilisateur. Dès que celui-ci s'identifie.

Ci-dessous, l'exemple vite réalisé est pour un unique utilisateur placé en 1iere ligne de la feuille Combo. D'autres lignes sont libres pour divers autres utilisateurs.

Un textBox reçoit et indique la colonne dont il veut modifier la largeur. Et il l'ajuste avec le scroll d'à côté (Réglables à minima et maxima)

Dès qu'il change une largeur d'une colonne (ici seulement 2 colonnes). Le Combobox s'ajuste aussi.

Maintenant je ne crois pas qu'il en modifie chaque matin les valeurs, sauf souci de vue.

Bonsoir le fil

Sinon une solution peut-être toute bête

Quand l'utilisateur clique sur le bouton, "frmACList" s'affiche
Pour sélectionner une des lignes de cet USF, il doit descendre sa souris (logiquement)

Donc la borne haute Y de l'USF est 17, alors en déclarant en entête de l'SUF

Dim FlgExit As Boolean

ce genre de code pourrait peut-être fonctionner (à voir)

Private Sub lvwAC_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal x As stdole.OLE_XPOS_PIXELS, ByVal y As stdole.OLE_YPOS_PIXELS)
  ' Si souris passe sur les côté ou en bas
  If x = 0 Or x = 570 Or y = 469 Then Unload Me
  ' si souris passe par le haut, 1ère fois ok
  If y = 17 Then
    If FlgExit = False Then
      FlgExit = True
    Else  ' Seconde fois on sort
      Unload Me
    End If
  End If
End Sub

A+

XCellus, merci mais je n'ai pas compris comment l'utilisateur change la largeur des colonnes... Peux-tu m'expliquer?

Merci BrunoM45, mais j'ai reçu plusieurs remarques d'utilisateurs qui s'attendent à ce que cette liste d'Accounts disparaisse en cliquant en dehors de cette liste SANS jamais y avoir rentré a souris.

Les utilisateurs veulent sortir la souris, NE PAS cliquer et continuer à voir cette liste, tout comme nous faisons lorsqu'on utilise un dropdown quelconque dans le monde Windows. Par exemple celui-ci (Scope):

image

Re,

Ok je laisse tomber, je n'ai rien compris du coup

X cellus, te donnera certainement la solution, mais je pense que tu n'échappera pas au ComboBox

Bonne soirée

image

Pour être plus clair, essaie d'appeler le dialogue Define Name de Excel, et faire les 3 étapes ci-dessous:

1. cliquer sur 1

2. bouger ta souris le long de ma fleche rouge

3. cliquer sur 2.

T'attends-tu à ce que la volet "Scope" contenant "Workbook" et "Sheet1" disparaisse? Si ta réponse est oui , alors tu as une très belle démonstration de ce que j'aimerais faire avec frmACList. Ceci est le comportement de tous les dropdowns du monde Windows (et IOS aussi).

Ceci n'est pas possible avec la solution de X Celllus, car cette solution ne marche pas dans le scénario décrit plus haut.

Merci quand même pour votre aide! A bientôt!

image

suite,

je n'ai pas compris comment l'utilisateur change la largeur des colonnes

Comme ceci, là il choisit la 1ière colonne (voir ce chiffre à droite du label Colonne)

image

Puis sur le scroll bar horizontal à droite du chiffre il augmente par > ou baisse par < ou plus rapidement prends le carré entre le < et le >

Et cela devient ainsi

image

Il souhaite aussi modifier la colonne 2, Donc, il obtient au final comme ci-dessous. Les largeurs étant sauvegardées, il retrouvera le Combobox ainsi tant qu'il ne le bouge pas à nouveau la largeur d'une ou deux colonnes.

image

Et,

Si la fenêtre du combo est ouverte et que l'utilisateur clique (gauche) sur le formulaire ou un autre contrôle présent sur le formulaire.

La fenêtre du combo se rétracte et disparait.

ok merci. En effet c'est possible, mais ça ne ressemble pas à la manière dont les utilisateurs d'Outlook changent la largeur des colonnes dans l'Inbox. Désolé, mais c'est ce modèle-là que je veux reproduire, au click près.

Si je trouve je vous ferai savoir.

Bonjour Stefano,

Voici ton fichier avec :
- Feuille "Temp" ajoutée
- USF "frmAccount2" modifié avec une Combobox et quelques lignes

Tu nous diras ce que tu en penses

A+

Merci BrunoM45 pour ton travail, c'est sympa!

Effectivement ça en jette!

Deux détails: on ne peut pas redimensioner le volet déroulant et on ne peut pas redimensioner les colonnes (comme dans un ListView 😉 )

Mais à part ça, c'est une solution possible, car il se comporte comme un drop down "courant".

Merci beaucoup!

Bon dimanche!

Stefano

image

Bonjour Stefano.gatto, BrunoM45,

Voilà c'est fait.

Avec la ListView. Comme ça les users peuvent jouer avec les colonnes. Une fois les données insérées.

Voir deuxième feuille nommée View.

Rechercher des sujets similaires à "comment fermer forme lorsqu clique dehors"