banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#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@texte-a-enlever.i2g.fr

 

Pied de page des forums

Powered by FluxBB