Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 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 | | Calendrier |
|
|
| Demande d'aide sur les objets 'option'. | |
| | Auteur | Message |
---|
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande d'aide sur les objets 'option'. Ven 13 Mar 2020 - 14:28 | |
| Bonjour. Voici mon problème: Je dispose d'une forme, autre que zéro, sur laquelle sont disposés 3 objets 'option', ainsi qu'un bouton OK permettant de valider le choix. J'aimerais passer outre le fait de cliquer sur un objet option, avant de cliquer sur 'OK'. J'ai tester la solution suivante: - Code:
-
label test
on_mouse_move n° option, test ... end
test: mark_on n° option return Cette solution fonctionne bien indépendamment de mon programme de 53.000 lignes, mais pas dans celui-ci, pour une raison inconnue ! Autrement, je pensais utiliser un timer ! Avez-vous une solution à me proposer ? Merci d'avance. | |
| | | silverman
Nombre de messages : 970 Age : 52 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Demande d'aide sur les objets 'option'. Sam 14 Mar 2020 - 11:40 | |
| Bonjour pedro CHECKED() permet de vérifier l'état d'un OPTION: - Code:
-
label test
form 10 : left 10,700 ' command_target_is 10 container_option 1 ' option 2:parent 2,1 top 2,10:left 2,10:caption 2,"option 1" ' option 3:parent 3,1 top 3,40:left 3,10:caption 3,"option 2" ' on_click 2,test on_click 3,test command_target_is 0
off_click 3 :' ne pas déclencher l'évènement mark_on 3 on_click 3,test
print checked(2) print checked(3) print end test: print "option(2)=",checked(2) print "option(3)=",checked(3) print return | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande d'aide sur les objets 'option'. Sam 14 Mar 2020 - 14:27 | |
| Bonjour.
Désolé Silverman, mais ce n'est pas du tout ce que je recherche !
Je voudrais juste éviter de cliquer sur un des boutons option, avant de valider sur le bouton 'OK'.
Juste un peu d'automatisme, en fait. | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Demande d'aide sur les objets 'option'. Sam 14 Mar 2020 - 15:06 | |
| Si j’ai bien compris ta question : Tu veux cliquer sur le bouton « OK » AVANT de choisir une option. Tu peux utiliser MARK_ON sur une option par défaut, ainsi la validation par OK déclenche l’événement qui y est associé avec prise en compte de l’option marquée. Un autre choix d’une autre option + appui sur OK sera aussi pris en compte. Bon essaie ce code, ça répondra peut-être à ta question - Code:
-
label Demarrer dim i container_option 10 option 11 : parent 11,10 : top 11,20 : left 11,50 : caption 11,"Faire ceci" option 12 : parent 12,10 : top 12,40 : left 12,50 : caption 12,"Faire cela" option 13 : parent 13,10 : top 13,60 : left 13,50 : caption 13,"Faire autre" mark_on 12 : ' l'option "Faire cela" est choisie par défaut button 20 : top 20,20 : left 20,300 : caption 20,"OK" : on_click 20,Demarrer end rem ============================================================================ Demarrer: for i = 11 to 13 if checked(i) > 0 message "L'option " + caption$(i) + " est choisie" end_if next i return rem ============================================================================
| |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande d'aide sur les objets 'option'. Sam 14 Mar 2020 - 15:25 | |
| Bonjour.
Non, ce n'est pas tout à fait cela. Une des options choisies doit être 'checked', sans aucun clic dessus.
J'ai testé mouse_move, car cela ne fonctionne pas ! | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Demande d'aide sur les objets 'option'. Sam 14 Mar 2020 - 15:46 | |
| Pardon Pedro, mais je n’ai toujours pas compris ta question. - Pedro a écrit:
- Une des options choisies doit être 'checked', sans aucun clic dessus.
- Code:
-
MARK_ON numero_de_l_option
Ce code fait que l’option soit ‘checked’ sans avoir besoin de cliquer dessus Dans le code que j'ai posté ci-haut, l'option 2 est déjà marquée et tu n'as pas besoin de cliquer dessus. Si ça ne répond pas à ta demande, je suis désolé | |
| | | jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Sam 14 Mar 2020 - 16:24 | |
| Une idée simpliste, mais qui peut répondre à la demande, puisque tu ne veux pas cliquer sur les options, c'est de mettre 3 boutons OK en spécifiant l'intérêt de chacun par exemple par un logo, et le tour est joué. Ou alors, tu mets une I.A. qui va (peut-être) déterminer ce que tu souhaites en fonction de ce que tu as fait avant. Je ne sais pas si ça va t-être utile...? | |
| | | silverman
Nombre de messages : 970 Age : 52 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Demande d'aide sur les objets 'option'. Dim 15 Mar 2020 - 11:18 | |
| Tu veux pouvoir modifier un option juste par survol de la souris, sans cliquer dessus? Puis ensuite valider avec un bouton "OK", c'est bien ca? | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande d'aide sur les objets 'option'. Dim 15 Mar 2020 - 12:59 | |
| Bonjour.
Oui, c'est exactement cela. Chaque option doit être mis à l'état 'checked', uniquement lors d'un survol de la souris.
J'ai testé avec on_mouse_move, mais cela ne fonctionne pas ! | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: Demande d'aide sur les objets 'option'. Dim 15 Mar 2020 - 14:56 | |
| Bonjour à tous ! @Pedro Voici un petit code qui devrait peut-être faire l'affaire : - Code:
-
dim survol% label move1, move2, move3 option 1 : left 1,50 : top 1,50 : caption 1,"choix 1" option 2 : left 2,150 : top 2,50 : caption 2,"choix 2" option 3 : left 3,250 : top 3,50 : caption 3,"choix 3" on_mouse_move 1,move1 on_mouse_move 2,move2 on_mouse_move 3,move3 end
move1: IF survol% = 1 then return survol% = 1 action(3) return
move2: IF survol% = 2 then return survol% = 2 action(3) return
move3: IF survol% = 3 then return survol% = 3 action(3) return
sub action(n%) off_mouse_move 1 off_mouse_move 2 off_mouse_move 3 mark_off 1 mark_off 2 mark_off 3 mark_on survol% on_mouse_move 1,move1 on_mouse_move 2,move2 on_mouse_move 3,move3 end_sub
Bonne programmation ! EDIT : Voici une version avec les OPTIONs groupées dans un CONTAINER_OPTION : - Code:
-
dim survol% label move1, move2, move3
container_option 10 option 1 : left 1,50 parent 1,10 option 2 : left 2,100 parent 2,10 option 3 : left 3,150 parent 3,10 on_mouse_move 1,move1 on_mouse_move 2,move2 on_mouse_move 3,move3 end
move1: IF survol% = 1 then return survol% = 1 action(3) return
move2: IF survol% = 2 then return survol% = 2 action(3) return
move3: IF survol% = 3 then return survol% = 3 action(3) return
sub action(n%) off_mouse_move 1 off_mouse_move 2 off_mouse_move 3 mark_on survol% on_mouse_move 1,move1 on_mouse_move 2,move2 on_mouse_move 3,move3 end_sub Ces deux exemples sont une extrapolation d'une solution de "survol souris" trouvée par Klaus.EDIT n° 2 : Et pour finir, voici une version avec un bouton Ok ! - Code:
-
dim survol% label move1, move2, move3, ok option 1 : left 1,50 : top 1,50 : caption 1,"choix 1" option 2 : left 2,150 : top 2,50 : caption 2,"choix 2" option 3 : left 3,250 : top 3,50 : caption 3,"choix 3" button 4 : left 4,150 : top 4,150 : caption 4,"OK !" alpha 5 : left 5,150 : top 5,200 : font_size 5,16 on_mouse_move 1,move1 on_mouse_move 2,move2 on_mouse_move 3,move3 on_click 4,ok end
move1: IF survol% = 1 then return survol% = 1 action(3) return
move2: IF survol% = 2 then return survol% = 2 action(3) return
move3: IF survol% = 3 then return survol% = 3 action(3) return
sub action(n%) off_mouse_move 1 off_mouse_move 2 off_mouse_move 3 mark_off 1 mark_off 2 mark_off 3 mark_on survol% on_mouse_move 1,move1 on_mouse_move 2,move2 on_mouse_move 3,move3 end_sub
ok: caption 5,"Choix n° " + STR$(survol%) return | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande d'aide sur les objets 'option'. Dim 15 Mar 2020 - 16:47 | |
| Bonjour.
Désolé Marc, mais ton code ne fonctionne pas dans mon programme de 53.000 lignes, pour une raison inconnue !
Par contre, il fonctionne parfaitement indépendamment de mon logiciel.
| |
| | | silverman
Nombre de messages : 970 Age : 52 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Demande d'aide sur les objets 'option'. Lun 16 Mar 2020 - 13:55 | |
| Voici une adaptation du code de Marc qui place les OPTION dans un autre form: - Code:
-
dim survol% label move1, move2, move3, ok
form 10 : left 10,700 :height 10,300 ' command_target_is 10 option 1 : left 1,50 : top 1,50 : caption 1,"choix 1" : width 1,width_text("choix 1",1) option 2 : left 2,150 : top 2,50 : caption 2,"choix 2" : width 2,width_text("choix 2",2) option 3 : left 3,250 : top 3,50 : caption 3,"choix 3" : width 3,width_text("choix 3",3) button 4 : left 4,150 : top 4,150 : caption 4,"OK !" alpha 5 : left 5,150 : top 5,200 : font_size 5,16 command_target_is 0 ' on_mouse_move 1,move1 on_mouse_move 2,move2 on_mouse_move 3,move3 on_click 4,ok
' inactive 10 END
move1: IF survol% = 1 then return survol% = 1 action(3) return
move2: IF survol% = 2 then return survol% = 2 action(3) return
move3: IF survol% = 3 then return survol% = 3 action(3) return
sub action(n%) ' NUMBER_MOUSE_DOWN, NUMBER_MOUSE_MOVE et NUMBER_MOUSE_UP ne fonctionnent plus :-( off_mouse_move 1 off_mouse_move 2 off_mouse_move 3 mark_off 1 mark_off 2 mark_off 3 mark_on survol% on_mouse_move 1,move1 on_mouse_move 2,move2 on_mouse_move 3,move3 end_sub
fnc width_text(a$,obj) if object_exists(100)=0 alpha 100 end_if width 100,0 height 100,0 result text_width(a$,100)+17 end_fnc
ok: caption 5,"Choix n° " + STR$(survol%) return
Ca fonctionne parfaitement. Si cela ne marche pas dans ton logiciel, c'est que c'est du côté de ton logiciel qu'il faut chercher, il y a peut être une commande INACTIVE qui traine par exemple. | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande d'aide sur les objets 'option'. Lun 16 Mar 2020 - 17:45 | |
| Bonjour.
Merci Silverman. Je vais voir de ce côté là. | |
| | | Contenu sponsorisé
| Sujet: Re: Demande d'aide sur les objets 'option'. | |
| |
| | | | Demande d'aide sur les objets 'option'. | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |