bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: phénomène curieux avec les oblets grid et memo Lun 24 Fév 2014 - 8:21 | |
| Bonjour à tous! Voilà le problème: Au départ, j'avais un edit pour remplir la cellule du grid cliquée. Mais quand on appuie sur return, il y a le beep infernal! Donc, j'ai remplacé l'edit, par un memo de la hauteur de l'edit et je ne traite que sa première ligne comme vous pouvez voir dans le programme. Jusque là, rien de bien compliqué! Je clique sur une cellule, et je tape la chaine dans le memo, et cela s'affiche au fur et à mesure dans la cellule. SAUF QUE! Quand je clique sur une des cellules à moitié visibles à droite ou en bas, à demi cachées par les barres de défilement ou le bord du grid, j'obtiens un message d'erreur soit immédiatement, soit dès que j'ai tapé un caractère au clavier. Après avoir essayé une première fois le programme ci après, décochez le rem de la ligne 14 (bar_none 30), et essayez-le à nouveau, car j'ai tout d'abord pensé que le bug venait des barres de défilement! QUE NENNI!!! Alors, après maintes essais, j'ai découvert qu'il n'y avait plus de messages d'erreur quand les dimensions du grid étaient supérieures aux dimensions de toutes les cellules! Pour voir décochez les rem de width 30 et height 30 et relancez le programme. Voici mon programme de test: - Code:
-
label saisie,cellule dim L%,C% L%=2:C%=2
memo 10 height 10,21 on_change 10,saisie set_focus 10
grid 30 ' width 30,400 ' height 30,200 top 30,height(10)+10 ' bar_none 30 on_click 30,cellule end
cellule: L%=grid_y_to_row(30,mouse_y_left_down(30)) C%=grid_x_to_column(30,mouse_x_left_down(30)) clear 10:set_focus 10 return
saisie: grid_write 30,L%,C%,item_read$(10,1) return
C'est vraiment curieux ce problème, vraiment CURIEUX! et INCOMPRÉHENSIBLE! Maintenant, Est-ce un BUG? ou bien ai-je mal fait quelque chose? A+ | |
|
Invité Invité
| Sujet: Re: phénomène curieux avec les oblets grid et memo Lun 24 Fév 2014 - 15:37 | |
| Bonjour, Je viens d'essayer ton programme, et j'ai compris ce qui se passe. D'abord, malgrès tous les essais que j'avais, je n'avais aucune erreur. Je me suis demandé sur quelle version je travaillais, et c'était la version du 13 septembre. J'avais deux versions d'ouverts car l'une d'elle je l'ai ouvert avec le clic d'un fichier bas. J'ai refais l'essai du programme, et effectivement il y a une différence, et ton rapport est vrai. Aussi j'ai rajouté une ligne dans cellule: - Code:
-
cellule: L%=grid_y_to_row(30,mouse_y_left_down(30)) C%=grid_x_to_column(30,mouse_x_left_down(30)) caption 0,"L%="+str$(L%) + " C%=" + str$(C%) clear 10:set_focus 10 return Dans les anciennes versions, le clic sur une cellule en dehors n'est pas reconnu, ce qui fait que la cellule est ignorée. Dans la dernière version, la colonne et la ligne extérieure sont pris en compte, et valent 0, ce qui est concidérée comme une erreur. |
|