IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

[LAMW] Image de fond sur Android [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Membre confirmé
    Avatar de Higgins
    Inscrit en
    Juillet 2002
    Messages
    520
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 520
    Points : 543
    Points
    543
    Par défaut [LAMW] Image de fond sur Android
    Bonjour,

    Je ne sais pas si je suis vraiment au bon endroit... J'utilise LAMW (Lazarus+Android Module Wizard) pour développer une application Android.
    Je voudrais mettre une image en fond en utilisant un jImageView pour lequel j'ai mis les propriétés layoutParamHeight et layoutParamWidth à lpMatchParent mais ensuite, quelque-soit la méthode, je rencontre un problème

    Méthode 1: utilisation de jImageList
    J'ajoute mon fond d'écran à la liste et je renseigne correctement les propriétés ImageList et Imageindex dans le JImageView et ça fonctionne
    Le problème c'est que j'ai besoin d'une autre ImageList pour stocker les icônes des boutons (toutes les images doivent avoir la même taille au sein d'un imageList) et là, ça coince: quelque-soit le composant ImageList que je manipule, les images sont "mélangées", avec des tailles différentes donc inaccessibles par Imageindex et chaque modification sur une liste impacte l'autre.
    Est-on réellement limité à un seul imageList? peut-on contourner cette limitation?

    ces problèmes m'ont amené à
    Méthode 2: utilisation d'une ressource
    J'ai ajouté aux ressources du projet un fichier fond.bmp auquel j'ai donné le nom FOND
    et j'ai ajouté le code suivant pour l'évènement onCreate
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    procedure TAndroidModule1.AndroidModule1Create(Sender: TObject);
     
      var bmp:jBitmap;
    begin
       bmp:=jBitmap.create(self);
       bmp.LoadFromRes('FOND');
       imageview1.SetImageBitmap(bmp);
     
    end;
    Problème, l'image n'est pas chargée...
    Si quelqu'un a une idée, je suis preneur
    7 fois à terre, 8 fois debout

  2. #2
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Bonjour !

    Oui, vous êtes au bon endroit, mais je ne sais pas s'il y a beaucoup de gens ici qui ont une expérience du développement pour Android (avec Lazarus je veux dire). Personnellement je n'en ai aucune. (Je n'ai même pas de smartphone.)

    Bonne chance pour votre projet.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  3. #3
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Bonsoir,

    Citation Envoyé par Higgins Voir le message
    Méthode 1: utilisation de jImageList
    J'ajoute mon fond d'écran à la liste et je renseigne correctement les propriétés ImageList et Imageindex dans le JImageView et ça fonctionne
    Le problème c'est que j'ai besoin d'une autre ImageList pour stocker les icônes des boutons (toutes les images doivent avoir la même taille au sein d'un imageList) et là, ça coince: quelque-soit le composant ImageList que je manipule, les images sont "mélangées", avec des tailles différentes donc inaccessibles par Imageindex et chaque modification sur une liste impacte l'autre.
    Est-on réellement limité à un seul imageList? peut-on contourner cette limitation?
    Tu es bien sûr de ne pas te tromper dans l'utilisation des "name" des objets ? (oui je sais, c'est idiot comme question, mais je n'arrive pas à comprendre comment une embrouille pareille peut survenir).

    Sinon, tu pourrais aller fouiller là-dedans, pas besoin d'être inscrit pour lire, mais attention, tout in english !
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  4. #4
    Membre confirmé
    Avatar de Higgins
    Inscrit en
    Juillet 2002
    Messages
    520
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 520
    Points : 543
    Points
    543
    Par défaut
    Bonjour à tous les deux,

    Merci d'avoir pris le temps de me répondre
    Sinon, tu pourrais aller fouiller là-dedans, pas besoin d'être inscrit pour lire, mais attention, tout in english !
    Déjà fait Je n'ai rien trouvé, du coup, je me suis créé un compte et j'ai fait le même post qu'ici en espérant y trouver plus de gens qui utilisent la solution mais pas de réponse pour l'instant...

    Je développe habituellement sur RAD Studio (environnement professionnel) et là, je voulais essayer de développer une appli perso sans utiliser les outils de la boîte.
    La nuit portant conseil, j'ai eu une idée: je vais essayer d'utiliser un jCanvas plutôt qu'un jImageView (pour la méthode 2) je vous tiendrai au courant

    Pour l'histoire des jImageList, ça semble bien lié au module android car, sur une application lcl "standard" je peux mettre autant de Timagelist que je veux, sans problème
    7 fois à terre, 8 fois debout

  5. #5
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Bonjour,

    en lisant ton post là-bas me vient la remarque suivante : il manque le code de la manipulation de tes imagelist, pour qu'on puisse "voir" où ça pourrait coincer.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  6. #6
    Membre confirmé
    Avatar de Higgins
    Inscrit en
    Juillet 2002
    Messages
    520
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 520
    Points : 543
    Points
    543
    Par défaut
    En fait, il n'y a pas de code
    Je fais un glisser/déposer du compostant jImageList à partir de la palette de composant. Ensuite, je double-clique dessus pour afficher l'interface d'ajout/suppression des images
    Lorsque je dépose un deuxième jImageList et que je double-clique dessus, le contenu du premier s'affiche
    7 fois à terre, 8 fois debout

  7. #7
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Ah oui, comme on fait tous souvent, depuis la nuit des temps l'invention des imagelists.

    Donc c'est un bug, plus qu'à le signaler ainsi.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  8. #8
    Membre confirmé
    Avatar de Higgins
    Inscrit en
    Juillet 2002
    Messages
    520
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 520
    Points : 543
    Points
    543
    Par défaut
    Citation Envoyé par Jipété Voir le message
    Donc c'est un bug, plus qu'à le signaler ainsi.
    Après une recherche un peu plus approfondie, il apparait que c'est bien un bug et qu'il est connu depuis le 16/03/2021.
    ça fait bientôt 2 ans, autant dire que j'ai peu d'espoir qu'il soit corrigé prochainement
    La piste du jCanvas n'a pas non plus été très concluante pour l'instant
    7 fois à terre, 8 fois debout

  9. #9
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Sincèrement désolé pour toi.

    Maintenant, ne pas perdre espoir : expérience vécue, je tombe un jour sur un bug dans VirtualBox pour monter un disque virtuel avec leurs outils, et au bout de mes recherches j'ai trouvé moi aussi que quelqu'un l'avait déjà signalé deux ans auparavant (21 février 2020), sans succès et sans suite.

    Me suis pas découragé, ai tout bien vérifié dans un projet ultra-minimaliste, et ai réactivé la discussion le 5 avril 2022.

    Hé ben crois-le si tu veux mais cette fois, Oracle a pris les choses en main et l'a corrigé !

    Bon, ça a pris un peu de temps (solution opérationnelle en juillet 2022), mais j'ai eu (et la communauté avec moi, du coup) gain de cause, et au-delà de la solution technique, ça fait plaisir.

    Donc courage et acharnement, ça peut payer.

    Et sinon, je ne sais pas si c'est possible dans ton contexte (je ne connais absolument pas Android et tes "j_qqchse"), mas as-tu essayé de lancer ton prog depuis une console ? On y a parfois des messages intéressants, qu'on ne voit pas en lançant depuis l'EDI...
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  10. #10
    Membre confirmé
    Avatar de Higgins
    Inscrit en
    Juillet 2002
    Messages
    520
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 520
    Points : 543
    Points
    543
    Par défaut
    Finalement, j'ai résolu mon problème. Il suffisait de copier l'image de fond dans l dossier res\drawable du projet puis, dans le module android, saisir le nom du fichier (sans l'extension) dans la propriété backgroundImageIdentifier
    7 fois à terre, 8 fois debout

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Image en fond sur une Userform
    Par potters dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/06/2007, 14h17
  2. Image de fond sur une JFrame et dans une JToolBar
    Par FredPsy dans le forum Agents de placement/Fenêtres
    Réponses: 9
    Dernier message: 01/02/2007, 18h12
  3. Probleme d'image de fond sur un <li>
    Par pierrot10 dans le forum Mise en page CSS
    Réponses: 11
    Dernier message: 30/01/2007, 15h35
  4. Affichage d'une image de fond sur un site
    Par eugiragal dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 20/12/2006, 18h43
  5. Image de fond sur MDIForm
    Par Michel Devaud dans le forum Composants VCL
    Réponses: 3
    Dernier message: 10/03/2006, 15h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo