PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile (précédentes versions) → Erreur avec la fonction dCopieImageFenêtre
Erreur avec la fonction dCopieImageFenêtre
Débuté par Lonb TOH, 05 mar. 2019 09:53 - 2 réponses
Posté le 05 mars 2019 - 09:53
Bonjour.

Je travaille sur un projet qui a pour but de rendre quelques fonctions de notre ERP mobiles, notamment le fait de pouvoir imprimer des étiquettes sur une imprimante type ZEBRA. Cette application fonctionne à la fois sur tablette tactile et sur téléphone Android.
Nous disposons de 3 différents modèles de tablettes de marque Lenovo et d'un modèle de téléphone de marque Asus.

La fonction est simple : j'ai disposé des champs dans une fenêtre et lors de son appel, ses paramètres permettent de les renseigner. Une fois les champs renseignés, je fais appel à la fonction dCopieImageFenêtre("") pour copier ma fenêtre dans une image et l'imprimer.
Le problème que je rencontre ne concerne que l'application sur téléphone. En effet, sur les tablettes, mon code fonctionne parfaitement. Avec le téléphone, l'application s'arrête au niveau de l'appel de la fonction dCopieImageFenêtre("") avec comme erreur : "Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()' on a null object reference"
Il semblerait que ma fenêtre soit vue comme inexistante.

Après plusieurs tentatives vaines de contournement de ce problème, je m'en remets à vous.

Merci.
Membre enregistré
3 messages
Posté le 05 mars 2019 - 10:35
J'ai omis de mentionner quelques éléments :
Version WINDEV MOBILE : 23
Version Android sur les appareils : 6.0 minimum.
Membre enregistré
3 messages
Posté le 12 mars 2019 - 14:29
Bonjour.

J'ai réussi à résoudre mon problème.
La fenêtre était en fait beaucoup trop grande pour l'écran du téléphone, comparé à celui d'une tablette. Je pense donc qu'elle n'arrivait pas à se charger entièrement, d'où l'erreur obtenue.
J'ai donc créé une fenêtre d'impression spécialement pour les téléphones, avec la taille et les champs réduits de moitié.
Il m'a suffit ensuite de doubler la taille de l'image générée pour obtenir un rendu à peu près équivalent à celui de la tablette.

Merci !
Message modifié, 12 mars 2019 - 14:30