Bonjour j'aimerai savoir si il est possible e faire un doucle click sur une ligne d'un listbox afin d'ouvrir une fenetre de dialogue.
Par quoi faut_il remplacer le Callback?
Je n'est trouver que de la documentation pour le click droit de la souris!
Version imprimable
Bonjour j'aimerai savoir si il est possible e faire un doucle click sur une ligne d'un listbox afin d'ouvrir une fenetre de dialogue.
Par quoi faut_il remplacer le Callback?
Je n'est trouver que de la documentation pour le click droit de la souris!
Tu peux récupérer ce qui a été fait avec la souris avec la propriété SelectionType de la Figure.
Donc dans le callback de ta listbox tu feras par exmple :Je suppose que tu veux un double-clic car le simple clic est dédié à autre chose.Code:
1
2
3
4 sel=get(gcbf,'SelectionType'); if strcmp(sel,'Open,') %ouvrir fenetre end
Attention il me semble que j'avais eu des soucis avec ça car malheureusement un double-clic est composé de 2 clics, donc des fois MATLAB agit dès le 1er clic.
A tester donc.
Merci je vais essayer cela!
Ca ne marche pas
J'ai fait ca
Code:
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 function listbox2_Callback(hObject, eventdata, handles) contents=get(handles.listbox2,'String'); imclick=contents{get(hObject,'Value')}; subplot(2,2,2); imshow(imclick); %Double click sel=get(gcbf,'SelectionType'); if strcmp(sel,'Open,') prompt = {'Enter le delai_pré:','Enter le delai_post'}; dlg_title = 'Entrer les parametres d affichage'; num_lines= 1; answer = inputdlg(prompt,dlg_title,num_lines); set(handles.edit4,'String',answer(1)); delai_pre=get(handles.edit4,'String'); set(handles.edit5,'String',answer(2)); delai_post=get(handles.edit5,'String'); ligne = get(handles.listbox2,'Value') mon_image = get(handles.listbox2,'String') affimage(delai_pre,delai_post,mon_image,ligne) end
As-tu essayé avec le Debuggueur ? (en double-cliquant dans l'éditeur sur le tiret à côté de la ligne du if)
ça te permettra de voir quelle est la valeur de sel.
Je suis desolé mais je n'ai jamais utilisé le deboggeur
Il maffiche le numero de la ligne avec ce qu'il ia sur ma ligne a coté
Comment je peux voir la valeur?
Tu pourrais nous expliquer à quoi tout cela va te servir ?
Ben quand je clique sur la ligne de ma listox ca affiche une boite de dialogue pour entrer des parametres
Et apres ca genere une ligne dans un fichier texte avec les parametres et la ligne rentrée dans ma listbox
C'est super énervant, ça ne fonctionne pas bien.
Pourtant il y a un exemple fourni qui lui fonctionne :
exemple
Il faudrait essayer de faire autrement....avec un bouton à côté par exemple.
Et je repose la question : le simple click est-il utilisé pour autre chose ?
Ben je l'utilise pour selectionner une ligne quand je veux la supprimer :cry:
Ce serait plus simple de sélectionner la ligne et d'utiliser deux boutons pour gérer les actions, non ?
Avec un bouton sur le coté ca marche tres bien
C'est jusque que je voulais faire ca pour lesthetique!!Mais quand je mais normal en option a la place d'open il devrait me fer avec le click gauche non?
Parce qu'il me fait rien non plus.
Tu as raison c'est enervant!!!!!
C'est parce que sinon a chaque fois l'utilisateur doit selectionner la ligne puis cliquer sur le bouton.Moi j'aurais aimer eviter de mettre un bouton mais bon je crois que je vais devoir le faire!
Merci quand meme de votre aide.
Ca marche :yaisse2:
J'ai tout mis sur la meme ligne comme cela :
Code:
1
2
3 if strcmp(get(handles.figure1,'SelectionType'),'open')