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 17 November 2006 14:55

samuel_31
Participant actif
Lieu: Pamiers
Date d'inscription: 16 Apr 2006
Messages: 116
Site web

prog mapbasic

Bonjour,
j'essaie de créer un petit outil .mbx mais je bloque.
je veux créer plusieurs tampons à l'intérieur d'unn polygone que j'ai déja. mais ces tampons sont à des intervalles non réguliers. il faut demander à l'utilisateur le nombre de tampons à réaliser (ca ca va). mais ensuite, il faut, pour chaque tampon, déterminer l'intervalle. je pense qu'il faut utiliser une boucle de type for... next mais le souci est que je n'arrive pas à stocker automatiquement les valeurs entrées par l'utilisateur dans des variables différentes à chaque fois (tampon 1, tampon 2, tampon 3 pour 3 tamons demandés par exemple).
deuxieme probleme, je voudrais sauver automatiquement ces tampons créés dans des tables différentes à chaque fois (avec un nom du type region_initiale_tampon_1, region_initiale_tampon_2, region_initiale_tampon_3).
enfin, (j'aurais peut etre pu le demander dès le début) je ne trouve pas comment faire pour demander à l'utilisateur de sélectionner le polygone à utiliser dans la table initiale.
voila
je ne sais pas si j'ai été très clair et peut etre que ca fait beaucoup toutes ces question
quoiqu'il en soit bonne journée
sam

Hors ligne

 

#2 Fri 17 November 2006 16:35

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: prog mapbasic

Bonjour
Pour la dernière question: ou la sélection doit exister avant le lancement de l'outil (et un message d'accueil le précise) ou l'utilisateur fait cette sélection depuis un bouton de l'outil muni d'un code genre
    ToolButton
      Icon  MI_ICON_ARROW
      HelpMsg "Sélectionner un polygone de la table bidule\nSélection"
      Cursor  MI_CURSOR_ARROW
      DrawMode  DM_CUSTOM_POINT   
      Calling  suite_du_programme
Pour la variable qui prend plusieurs valeurs choisies par l'utilisateur, je pense qu'il faut utiliser une variable array (liste) : consultez l'aide MB sur ces variables. On peut alors faire un for i=1 to Ubound(t), t() étant la variable liste contenant n valeurs (nb: il faut des redim pour que la taille de liste soit ad-hoc)
ps: pas impossible aussi d'avoir à utiliser les handlers (préfabriqués ou spécifiques) genre WinFocusChangedHandler qui déclenche une action quand on change de fenêtre active (là aussi...voir l'aide)
Bon courage

Hors ligne

 

Pied de page des forums

Powered by FluxBB