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 |
|
|
| Comment terminer une saisie dans un objet par entrée | |
| | |
Auteur | Message |
---|
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Comment terminer une saisie dans un objet par entrée Ven 25 Sep 2009 - 20:56 | |
| - Citation :
- Attendons de voir ce que le magicien va sortir de son chapeau.
J'ai également hate de voir ce que toi tu vas nous sortir.
Désolé, Cosmos70, Si tu relis bien cette phrase tu vas comprendre que le magicien, à qui je pensais, ce n'est pas toi mais Jack. Donc je ne te surestime pas. Par contre je t'estime (tout court), car comme moi tu t'acharnes pour trouver des solutions. Et tu fais beaucoups d'efforts pour nous aider à résoudre nos problèmes dans la mesure de tes connaissances. Alors, continue comme çà, on t'apprécis tel quel. - Citation :
Oh ! un programmeur qui fait une erreur dans un programme, c'est inadmissible ! Et je peus te dire Cosmos70 que cette sitation de JL35, c'est de l'humour, car tu ne vois pas à l'écran le sourire en coin qu'il a quand il écrit, mais moi je le devine. Il est plein de malice ce JL35. Bon, je vais voir de plus près ce que Jack a sorti de nouveau. Bonne soirée et A+ | |
| | | Invité Invité
| Sujet: Re: Comment terminer une saisie dans un objet par entrée Ven 25 Sep 2009 - 22:37 | |
| annulé J'ai marqué annulé, parce que j'ai effacé tout ce que j'avais envoyé. Ce n'est pas par mauvaise intention, mais ce que j'ai publié et que j'ai fais référence ici est peut-être mauvais. Cela fonctionnait bien, mais dans mon programme, plusieurs fois j'ai reçu un message d'erreur avec bounte ...enfin quelque chose comme un dépassement d'indice si j'ai bien compris. Aussi j'ai tout enlevé, je n'ai pas assez de temps pour regarder de près. Quant à l'humour, vous pouvez y aller à fond. Pas de problème. De toute façon lorsqu'on écrit quelque chose,on prend toujours le risque d'être critiqué, et c'est bien normal. Cela est vrai pour tout le monde. Bonne soirée A+ |
| | | Invité Invité
| Sujet: Re: Comment terminer une saisie dans un objet par entrée Dim 27 Sep 2009 - 11:29 | |
| Je reviens sur ce poste pour le blocage des objets. Dans le cas où tous les objets sont désactivés, il faut prévoir une sortie, soit par un bouton, où par exemple on_click 0,>>sous programme qui désactive les objets<<. Il ne faut pas inactiver la forme 0. Sinon lors d'une erreur, il ne sera pas possible de reprendre la main sur le programme, vu que tout est bloqué. Le mieux est de permettre la sauvegarde et de reprendre le programme. Voir aussi avec on_error_goto, autre possibilité. A+ |
| | | jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Solution pas simple Dim 27 Sep 2009 - 15:38 | |
| Je me suis déjà heurté au problème de départ de Jean Claude : comment sortir d'un edit sans reprendre la souris, et j'avoue que j'avais laissé tombé. C'est l'occasion de se pencher sur un petit casse-tête amusant qui peut permettre de trouver un jour la solution "Euréka !". Depuis que j'utilise Panoramic, je n'utilise plus les inkey$ (qui rappellent pourtant de bons vieux souvenirs !) On trouve laborieusement des solutions qui, dès qu'on rejoute un petit supplément très innocent, aboutissent trop souvent à nouveau à cette horrible violation de je ne sais plus quoi... J'ai fini par en déduire que ce n'était pas compatible avec la programmation orientée objet, d'autant qu'on prend toujours le risque de s'enfermer dans des boucles infinies... Je me suis donc creusé la tête pour trouver une solution sans inkey$ et sans scancode (défi !). Ce que j'ai trouvé est loin d'être parfait, mais cela offre une possibilité intéressante. - Code:
-
dim i , k , a$ dim x : x=20 dim y : y=20 label detect , fin
edit 1 : left 1,x : top 1,y : on_change 1,detect edit 2 : left 2,x : top 2,y+30 : on_change 2,detect edit 3 : left 3,x : top 3,y+60 : on_change 3, detect button 4 : left 4,x : top 4,y+100 : caption 4,"&Fin" : on_click 4,fin alpha 5 : left 5,x : top 5,180 : caption 5,"Appuyez sur $ pour sortir de l'edit"
end
detect: for i=1 to 3 if clicked(i)=1 then k=i next i a$=text$(k) if right$(a$,1)="$" set_focus 4 a$=left$(a$,len(a$)-1) caption 5,a$ text k,a$ end_if return
fin: terminate
A noter qu'il est impossible (par ce procédé) de terminer l'edit par l'appui sur la touche ENTER (l'edit ne le captant pas), mais on peut le remplacer par l'appui sur une autre touche (ici la touche $ qui ne sert pas souvent). Autre chose, comme la possiblité de faire « if changed(i)=1 » n'existe pas (pour le moment) dans le langage panoramic, j'ai remplacé par un clicked, ce qui compromet la possibilité de faire passer le focus automatiquement d'un edit à l'autre (parce qu'il faut cliquer pour que ça marche) par un « set_focus k+1» par exemple. C'est peut-être pas génial, mais ça ne fait pas de « violation gna-gna » ! A voir si Jean Claude peut en tirer quelque chose d'intéressant pour son programme. Ciao ! | |
| | | jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Mais Dim 27 Sep 2009 - 16:16 | |
| Ceci dit, la solution proposée précédemment : b$=inkey$ if scancode<>13 then goto insert est également intéressante et semble montrer que ce n'est pas si incompatible que ça, parce que ça continue à marcher sans planter, même quand on rajoute des tas de complications. C'est intéressant ces échanges de points de vue ! | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Comment terminer une saisie dans un objet par entrée Dim 27 Sep 2009 - 16:48 | |
| Salut Jean Jacques,
Ton code fonctionne parfaitement, et il va peut-être me permettre de résoudre un autre problème sur lequel je planche depuis ce matin(grace a ta boucle detect). En testant ton code, à la fin on sort par le bouton FIN. Pourquoi peut-on taper Entrée avec un BUTTON, sans que cela ne perturbe en rien le programme, et pas dans un EDIT. C'est çà que je ne pige pas. J'aimerai bien que JACK me dise ce qu'il en pense.
A+ | |
| | | Invité Invité
| Sujet: Re: Comment terminer une saisie dans un objet par entrée Ven 2 Oct 2009 - 12:13 | |
| A Jean Claude pour l'attente de sortie de mon programme, plus haut dans le post. J'ai essayé cette nuit, de présenter mon travail, mais malheureusement il est nécessaire que je transmette des images avec. IMPOSSIBLE!. l'hébergeur d'image n'accepte pas mon adresse e-mail. J'ai même créé un nouveau compte avec une adresse yahoo, que j'ai aussi. Même résultat. J'ai viré le programme qui était installé sur l'ordi, en espérant pouvoir le réinstallé, et faire accepté par l'hébergeur. Que "nenni", il refuse toujours mon adresse e-mail. Désolé, je renonce, ça sert à rien de perdre son temps en informatique avec quelque chose qui ne vous accepte pas. Et comme il n'y a aucun lien pour expliquer quoi que ce soi sur le site en question!!!. Mes regrets, A+ |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Comment terminer une saisie dans un objet par entrée Ven 2 Oct 2009 - 15:48 | |
| salut cosmos, Je ne comprends pas cette histoire d'e-mail refusé quand tu veux faire héberger une image, vois la réponse que j'ai faite à somsoc dans cette même rubrique 'A l'Aide !', topic 'impossibilité d'héberger une image' | |
| | | jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Réponse pour le bouton qui consent et l'edit qui résiste Sam 3 Oct 2009 - 16:49 | |
| Réponse à la question de Jean Claude de dimanche dernier : L'entrée clavier avec Entrée marche avec le bouton parce que c'est prévu pour (j'avais mis machinalement une esperluette (&) devant mon message "Fin", ce qui permet la réception de messages du clavier, soit par Alt-F, soit par le bouton Entrée quand le bouton a le focus) Par contre, pour les edit, apparemment, ça n'est pas prévu au programme. Mais on ne va pas rajouter cela à la pile des tâches de Jack qui doit être aussi haute que l'Empire State Building ! | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Comment terminer une saisie dans un objet par entrée Sam 3 Oct 2009 - 21:34 | |
| Oui, c'est exact ce n"est pas prévu pour EDIT. Mais si tu fabriques un programme ou l'utilisateur a beaucoups de saisie à faire, c'est un inconvénient majeur. Va expliquer a un acheteur potentiel de ton logiciel que la saisie est un peut longue du fait des boutons obligatoires à coté de l'EDIT. Dans le projet que je fais actuellement, j'essai au maximun de ne pas utiliser d'EDIT, mais plutôt des COMBO(s), quand c'est possible.
Merci pour ta réponse. A+ | |
| | | Jack Admin
Nombre de messages : 2394 Date d'inscription : 28/05/2007
| Sujet: Re: Comment terminer une saisie dans un objet par entrée Jeu 15 Oct 2009 - 21:38 | |
| La version téléchargeable du 15 octobre permet de tester les touches clavier adressées à un objet système, et donc permet de terminer une saisie dans un EDIT par la touche ENTER. voir l'exemple: - Code:
-
label enter_key edit 1:set_focus 1 on_key_up 1,enter_key end
enter_key: if key_up_code=13 then caption 0,"ENTER est relaché" return | |
| | | Invité Invité
| Sujet: Re: Comment terminer une saisie dans un objet par entrée Jeu 15 Oct 2009 - 23:20 | |
| Je suis très heureux de cette nouvelle. Merci Jack, en mon nom et de tous ceux qui attendait cela. Merci à + |
| | | Contenu sponsorisé
| Sujet: Re: Comment terminer une saisie dans un objet par entrée | |
| |
| | | | Comment terminer une saisie dans un objet par entrée | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |