Précédent   Forum des professionnels en informatique > Environnements de développement > WinDev > Windev Mobile
Windev Mobile Forum d'entraide sur la programmation Windev Mobile (Pocket PC, SmartPhone,...)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/12/2011, 17h21   #1
Membre régulier
 
Homme Jean-Jacques MONOT
Responsable des études
Inscription : février 2010
Messages : 97
Détails du profil
Informations personnelles :
Nom : Homme Jean-Jacques MONOT
Localisation : France

Informations professionnelles :
Activité : Responsable des études
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : février 2010
Messages : 97
Points : 80
Points : 80
Par défaut [WM16]Appel d'une procédure WM à partir d'un code java

Bonjour,

J'arrive sans souci maintenant à créer des fonctions et classes écrites en Java dans une application Android Windev Mobile.

Donc, WM -> java : ok

Par contre, maintenant, je voudrais pouvoir appeler une procédure WM (globale ou non) à partir d'une fonction Java. Donc faire : java -> WM

J'ai essayé en utilisant un code du style :
Code :
1
2
3
4
5
6
7
8
9
10
11
===============================================
// déclaration View  pour la fenêtre FEN_carte
static ViewGroup FEN_carte;

// récupération d'un handler sur la fenêtre FEN_carte
FEN_carte = (ViewGroup) getView ("FEN_carte");

//La fenêtre FEN_carte comprend une procédure locale "Essai" écrite en WM pur
FEN_carte.Essai();          
===========================================
Lors de la compilation, j'obtiens une erreur ....
"cannot find symbol symbol : method Essai()"

On a l'impression que cela le veut presque ... il faudrait juste passer l'étape de la déclaration de la procédure de la fenêtre ....

Est-ce que qqun sait comment déclarer l'existence de la méthode quelque part, comme on le ferait avec un header .h en C?

Ou sait comment appeler une procédure WM dans une procédure java dans WM ?
courdi95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2011, 07h35   #2
Membre régulier
 
Homme Jean-Jacques MONOT
Responsable des études
Inscription : février 2010
Messages : 97
Détails du profil
Informations personnelles :
Nom : Homme Jean-Jacques MONOT
Localisation : France

Informations professionnelles :
Activité : Responsable des études
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : février 2010
Messages : 97
Points : 80
Points : 80
Comme d'habitude ... suis-je le seul à faire des essais bizarres ? ..... je me réponds.

Le support technique gratuite (très bien) et l'assistance directe (que je vous recommande aussi) m'ont fourni la réponse.

1. pour le moment (v16 et v17 de 12/2011), uniquement les procédures écrites en WL et globales peuvent être accédées, et en plus, elles ne doivent pas avoir de paramètres, ni renvoyer de valeur ....
on peut y accéder en utilisant leur nom : "MaProcedure", en remplaçant la première lettre par une minuscule "maProcedure", et en ajoutant le préfixe "fWD_", ce qui donne : "fWD_maProcedure" (j'imagine qu'il ne faut pas mettre d'accent aux lettres ....).
cela marche bien, mais ne permet pas l'échange de données .... que l'on peut contourner en utilisant des champs de saisie dans une fenêtre et avec la fonction java de PCSFOT "getView" on peut se brancher dessus et écrire en java : "monSAI.setTextView ("mon parametre")". il suffit ensuite que la procédure appelée aille lire ces SAI.

2. la bonne nouvelle maintenant : dans une release de la V17 en janvier ou février, une encapsulation des ces procédures WL est prévue qui les rendra accessibles dans du code java, même si elles sont locales dans une fenêtre. Cette encapsulation permettra également l'échange des paramètres et données ...

A suivre donc !
courdi95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h12.


 
 
 
 
Partenaires

Hébergement Web