#1 Fri 14 March 2003 14:21
- Acfgao
- Invité
Boites de dialogue sous MapBasic
Bonjour,
Je veux developper une boite ListBox permettant d'acceder a plusieurs types d'entites (polyg, points).
J'ai un *.MBO (boite de dialogue de choix d'objets), un *.MBX (cense executer le MBO via bouton d'execution) et un projet MBP qui fait le lien (en theorie).
Il me manque le code qui permet d'afficher le resultat sous MI.
Si quelqu'un a un exemple tout simple sur lequel je peux m'appuyer je suis preneur.
Merci
#2 Fri 14 March 2003 14:21
- Geo Maumet
- Invité
Re: Boites de dialogue sous MapBasic
Bonjour,
Les fichiers MBO et MBX sont des fichiers deja compiles, il vous faut les
fichier mb pour que le mbp puisse les linker et les compiler.
laurent
#3 Wed 18 June 2003 16:17
- Gwenco
- Invité
Re: Boites de dialogue sous MapBasic
Bonjour,
Je cherche a lancer une boite de dialogue a partir d'une premiere boite de dialogue grace a un Control Button.
Et j'aimerais que le premier Dialog s'efface de l'ecran pour faire place au second...
Le probleme est que je n'y arrive pas !
J'ai utilise Dialog remove mais celui-ci ne fonctionne pas !
Alors si quelqu'un a deja ete confronte au pb, merci de m'eclaircir !
Au revoir
#4 Wed 18 June 2003 16:18
- Jacques Paris
- Invité
Re: Boites de dialogue sous MapBasic
Le petit programme suivant montre comment cela marche (mal)
Le retrait du premier dialogue ne se fait pratiquement qu'a la fermeture du
deuxieme. Il faudrait donc essayer de cacher le premier par un deuxieme
plus grand (pour eviter de distraire l'utilisateur) tout en esperant que le
deuxieme ne sera pas deplace pour devoiler le premier (une bonne astuce est
de ne pas donner de titre au deuxieme, ce qui supprime la barre de la
fenetre par laquelle on peut la deplacer)
Cependant si le deuxieme appelle pour quelque action, il est d'abord ferme
et le premier redevient visible. Ce n'est que lorsque le deuxieme est
complete que le premier est vraiment elimine.
Vous pouvez tester le role de dialog remove en supprimant la ligne
Peut-on ameliorer ce scenario? Je ne connais pas de reponse autre que non,
mais peut-etre que quelqu'un ..
declare sub pied
dialog
control button title pied calling pied
control okbutton
note Fini dans main
sub pied
dialog remove
dialog
control statictext title Ça c'est le pied!
control okbutton
Note Fini dans pied
end sub
Jacques Paris
#5 Fri 20 June 2003 12:33
- Frédéric Renversez
- Invité
Re: Boites de dialogue sous MapBasic
Bonjour,
J'avais resolu le probleme par une astuce bien brutale mais efficace :
Boucle :
Call DlgPremier()
If Not CommandInfo(CMD_INFO_DLG_OK) Then
CAll DlgDeuxieme
If Not CommandInfo(CMD_INFO_DLG_OK) then
Goto Boucle
End If
End If
On passe ici de l'une a l'autre des deux boites par le bouton CancelButton
de chacune des deux boites. Si l'on veut un vrai bouton Annuler dans l'une des
deux boites on peut toujours le mimer par un control Button simple, associe a
un Dialog Remove.
Simple mais efficace dans mon cas. Evidemment c'est tres limite mais je n'ai
jamais trouve d'autre moyen pour contourner la modalite forcee des boites
de dialogue MapBasic.
J'espere que ca vous aidera.
Frederic RENVERSEZ I2G
frederic.renversez@ i2g.fr