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 Tue 19 August 2008 09:43

Nicolas Szlapka
Participant actif
Lieu: NPDC
Date d'inscription: 20 Dec 2006
Messages: 107

[MapBasic 9] Vider un edittext

Bonjour à tous.

J'ai un petit souci pour une programmation MapBasic (je débute !)

J'ai créé une fenêtre avec entre autres : un edittext, un bouton "Parcourir" et un bouton "Effacer".
J'arrive à faire apparaître le chemin d'une Table dans l'edittext après être passé par le bouton "Parcourir".
Je voudrais que ce texte disparaisse quand je clique sur "Effacer".
Que dois-je écrire comme procédure pour y arriver ? (dois-je utiliser ReadControlValue de l'edittext ou bien la variable qui fait apparaître le texte ?)
J'espère être clair...

Si quelqu'un peut m'aider, je l'en remercie à l'avance. smile
Bonne journée


Nicolas

Hors ligne

 

#2 Tue 19 August 2008 10:13

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

Re: [MapBasic 9] Vider un edittext

Bonjour
Le EditText doit être muni d'un ID (disons ID 10)
Le clic sur "Effacer" appelle une sous procédure "effacement" qui peut se résumer à une ligne:
Alter Control 10 Value ""
Pour activer ainsi la procédure "effacement" (qui doit être déclaré par Declare sub effacement), il suffit que la définition du Control Button "Effacer" correspondant comporte un "calling effacement"

nb: on peut aussi se demander si ce bouton est vraiment utile et s'il ne vaudrait pas mieux en faire l'économie...

Hors ligne

 

#3 Tue 19 August 2008 10:54

Nicolas Szlapka
Participant actif
Lieu: NPDC
Date d'inscription: 20 Dec 2006
Messages: 107

Re: [MapBasic 9] Vider un edittext

Merci Maurice, ça fonctionne. (edit : je viens de me rendre compte que j'ai déjà utilisé ce genre de code pour faire apparaître le chemin dans l'edittext... quel nul. retour de vacances...)

En effet, j'ai déjà un "calling erase" (où "erase" correspond à la procédure d'effacement).
Il me manquait seulement cette ligne me permettant de vider l'edittext (qui a l'ID 1).

Si j'utilise ce bouton "Effacer", c'est parce que quand je veux changer de fichier en passant par le bouton "Parcourir", ça me crée une erreur et mon outil se ferme.

En voici la raison :
quand je clique sur "Parcourir", je prévois déjà l'ouverture de la Table dont le chemin s'inscrit dans l'edittext. Cette Table porte alors un alias (que j'ai nommé "Point").
Une Table "Point" est donc ouverte. Si je veux changer de Table en recliquant sur "Parcourir", il y a une fenêtre d'erreur me précisant que "Une table Point est déjà ouverte. Choisissez un autre nom." et l'outil se ferme.
Comme je débute, j'ai voulu "contourner" ce problème avec le bouton "Effacer". big_smile

Dernière modification par Nicolas Szlapka (Tue 19 August 2008 11:05)


Nicolas

Hors ligne

 

#4 Tue 19 August 2008 12:05

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

Re: [MapBasic 9] Vider un edittext

Le plus dur dans les programmes, si on les écrit pour les autres...c'est l'ergonomie !!
Pour changer de table, on peut commencer par tester la présence d'une table "Point" ouverte et la fermer...
nb: effacer le EditText ne suffit pas à fermer la table "Point"

Hors ligne

 

#5 Tue 19 August 2008 12:14

Nicolas Szlapka
Participant actif
Lieu: NPDC
Date d'inscription: 20 Dec 2006
Messages: 107

Re: [MapBasic 9] Vider un edittext

Pour le nota : oui, j'ajoutais "close table Point interactive"

Pour le test de présence de la table Point, je vais voir ça de plus près. Il doit y avoir ça dans le tutorial que j'ai récupéré...
Merci encore smile


Nicolas

Hors ligne

 

Pied de page des forums

Powered by FluxBB