#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.
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".
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
Nicolas
Hors ligne