Page 1 sur 1
Points aéronautiques de la France
Publié : sam. 29/sept./2018 23:10
par euseluli
Excusez moi par mon mauvais français.
Je suis débutant à la programmation et malgré j'ai PureBasic depuis , je crois, 10 années je me considére aussi an débutant avec Pure.
Le simple programme je vous joins, il a un erreur que je ne peux pas détecter.
En plus, je veux ajouter une autre écran pour présenter des boutons de les points que restent.
Description du logiciel:
Très simple. Il lit un fichier de texte, "fijosFR.txt", 1306 registres avec le nom et des coordonnées géographiques de tous les points aéronautiques de la France.
L'erreur:
Il montre 1120 boutons et après que j'appuie sur un bouton pour la prémiere fois, le bouton 1 disparait.
Comme est possible presénter une autre écran avec les boutons que manquent et les changer á ma choix?
Merci bien ! Gracias
https://mega.nz/#F!6hBlzSoa
Re: Points aéronautiques de la France
Publié : sam. 29/sept./2018 23:39
par Ar-S
Hola..
Ton lien demande une clé... Donc on ne peut rien tester.
Ensuite dans ce que tu dis, je pense que tu as un soucis de boucle.
Pour ouvrir plusieurs fenêtres tu as pas mal d'exemples sur le forum.
En voilà un ici :
https://www.purebasic.fr/french/viewtop ... es#p172370
Re: Points aéronautiques de la France
Publié : dim. 30/sept./2018 10:17
par euseluli
Bonjour:
J'essaye un autre lien et j'étudierai comme faire deux fênetres.
Merci
https://www.dropbox.com/sh/tlfh7gz9nofi ... xZVVa?dl=0
Re: Points aéronautiques de la France
Publié : dim. 30/sept./2018 12:38
par cage
Bonjour,
J'ai juste commenté les 2 lignes TextGadget() et le problème disparait.
cage
Code : Tout sélectionner
StartDrawing(WindowOutput(0))
Repeat
SetGadgetFont(#PB_Default,FontID(2))
Event=WaitWindowEvent()
If Event = #PB_Event_Gadget
Value = GetGadgetData(EventGadget())
ind$=Left(Messages.s(Value-1),5)
dat$=Right(Messages.s(Value-1),Len(Messages.s(Value-1))-5)
;TextGadget(0, 956-(Len(ind$)*7),920,250, 50, ind$)
SetGadgetFont(#PB_Default,FontID(3))
;TextGadget(1, 956-(Len(dat$)*7),970, 1900, 50, dat$)
EndIf
Until Event = #PB_Event_CloseWindow
StopDrawing()
Re: Points aéronautiques de la France
Publié : dim. 30/sept./2018 16:47
par euseluli
C'est vrai mais ensuite je n'aurai pas résultat.
En suivant votre orientation, je crois que le probléme c'est à la seconde ligne TextGadget() parce que si je l'elimine, le nom du point est presenté. Maintenant, il faut des données de ce point.
Merci.
Re: Points aéronautiques de la France
Publié : dim. 30/sept./2018 23:42
par Ollivier
Dropbox marche pas.
Poste ton code direct ici entre balises [code];le code[/code].
Ou bien précise ta demande étape par étape.
Re: Points aéronautiques de la France
Publié : lun. 01/oct./2018 6:55
par Micoute
euseluli a écrit :Il montre 1120 boutons et après que j'appuie sur un bouton pour la prémiere fois, le bouton 1 disparait.
L'erreur se produit parce que à la ligne 43, on trouve un textegadget ayant un identifiant identique au premier bouton, comme il y a 1120 boutons, il faut que le premier textegadget aie un identifiant supérieur.
Code : Tout sélectionner
Repeat
SetGadgetFont(#PB_Default,FontID(2))
Event=WaitWindowEvent()
If Event = #PB_Event_Gadget
Value = GetGadgetData(EventGadget())
ind$=Left(Messages.s(Value-1),5)
dat$=Right(Messages.s(Value-1),Len(Messages.s(Value-1))-5)
TextGadget(1121, 956-(Len(ind$)*7),920,250, 50, ind$)
SetGadgetFont(#PB_Default,FontID(3))
TextGadget(1122, 956-(Len(dat$)*7),970, 1900, 50, dat$)
EndIf
Until Event = #PB_Event_CloseWindow
Re: Points aéronautiques de la France
Publié : lun. 01/oct./2018 17:45
par euseluli
Il fonctionne.
Merci beaucoup !