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

Composants VCL Delphi Discussion :

PrinterSetupDialog.Execute - Valeur de retour par défaut


Sujet :

Composants VCL Delphi

  1. #1
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 670
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 670
    Points : 7 036
    Points
    7 036
    Par défaut PrinterSetupDialog.Execute - Valeur de retour par défaut
    Je rencontre un problème avec le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
          PrinterSetupDialog := TPrinterSetupDialog.Create(nil);
          try
             //.Choix de l'imprimante.
             if PrinterSetupDialog.Execute then
                Result := Printer.Printers[Printer.PrinterIndex]
             else
                ShowMessage('');
          finally
             PrinterSetupDialog.Free;
          end;
    - A la première exécution, la boîte de dialogue s'affiche normalement.
    - A partir de la deuxième exécution, la boîte de dialogue ne s'affiche pas, et la valeur de retour est à faux. Je ne peux donc pas sélectionner l'imprimante, et l'application plante plus loin.

    Une idée ?


  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Et en utilisant un Release plutôt que le Free (enfin en supposant que TPrintSetupDialog soit bien une fiche ) ?

  3. #3
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 670
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 670
    Points : 7 036
    Points
    7 036
    Par défaut
    Citation Envoyé par Aka Guymelef Voir le message
    (enfin en supposant que TPrintSetupDialog soit bien une fiche ) ?
    Bin non, c'est un composant non graphique qui permet d'afficher la boîte de dialogue Windows de paramétrage de l'impression.
    Là je le crée en dynamique, au lieu de le poser sur une Form.

  4. #4
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 670
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 670
    Points : 7 036
    Points
    7 036
    Par défaut
    Bon, j'ai fait un essai avec la TPrintDialog, et elle s'affiche à chaque fois (et me permet, à priori, la même chose).

    Mais, à partir du deuxième appel, même si elle me permet de faire un choix, il n'est pas pris en compte par le Printer.PrinterIndex.



    Personne n'a jamais eu le problème ?
    Une idée ?


  5. #5
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 670
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 670
    Points : 7 036
    Points
    7 036
    Par défaut
    Après de nouveaux essais, je constate que non seulement Printer.PrinterIndex ne contient pas l'imprimante que j'ai choisie, mais au lieu de garder la dernière valeur, il reprend l'index de la toute première imprimante sélectionnée au début de mon application.


    J'ai du mal à comprendre le fonctionnement de Printer ...

  6. #6
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Et en faisant un Refresh (ou après ?) sur Printer ?

  7. #7
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 670
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 670
    Points : 7 036
    Points
    7 036
    Par défaut
    Citation Envoyé par Aka Guymelef Voir le message
    Et en faisant un Refresh (ou après ?) sur Printer ?
    Bin, je ne comprend pas le rapport avec mon problème, mais si je fais un Printer.Reffresh; avant chaque création de la boîte de dialogue, ça se met à fonctionner normalement.



  8. #8
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Ben citation de l'aide de Delphi sur cette méthode Refresh de l'objet TPrinter :

    Appelez Refresh lorsque les polices ou les imprimantes installées sur le système actuel peuvent avoir changé.Refresh efface le cache interne des polices et imprimantes installées,afin que les propriétés Fonts et Printers soient actualisées lorsqu'elles sont lues ensuite.

  9. #9
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 670
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 670
    Points : 7 036
    Points
    7 036
    Par défaut
    Citation Envoyé par Aka Guymelef Voir le message
    Ben citation de l'aide de Delphi sur cette méthode Refresh de l'objet TPrinter :
    Appelez Refresh lorsque les polices ou les imprimantes installées sur le système actuel peuvent avoir changé.Refresh efface le cache interne des polices et imprimantes installées,afin que les propriétés Fonts et Printers soient actualisées lorsqu'elles sont lues ensuite.

    Justement. Je ne m'amuse pas à installer une nouvelle imprimante pendant l'exécution de mon application. Donc, logiquement (enfin, moi je trouve ça logique ), il ne devrait pas y avoir besoin de raffraichir la liste des imprimantes.
    Il y a un truc qui m'échappe ...


  10. #10
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    C'est ce que dit l'aide maintenant ça impacte peut-être plus de chose derrière, notamment ce qui t'intéresse peut-être

  11. #11
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 670
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 670
    Points : 7 036
    Points
    7 036
    Par défaut
    Citation Envoyé par Aka Guymelef Voir le message
    C'est ce que dit l'aide maintenant ça impacte peut-être plus de chose derrière, notamment ce qui t'intéresse peut-être
    Faut croire ..


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

Discussions similaires

  1. Valeurs non rangées par défaut sur un Index
    Par ApocKalipsS dans le forum Administration
    Réponses: 4
    Dernier message: 28/06/2011, 18h30
  2. [1.x] symfony1.4/valeur du formulaire par défaut
    Par sou1987 dans le forum Symfony
    Réponses: 3
    Dernier message: 23/04/2010, 19h31
  3. valeur de retour par reference
    Par meryeminfo dans le forum Débuter
    Réponses: 7
    Dernier message: 04/07/2009, 18h44
  4. Valeur de parametre par défaut inopérante
    Par brunoSCP dans le forum SSRS
    Réponses: 0
    Dernier message: 13/02/2009, 17h10
  5. configuration de valeur du DSCP par défaut
    Par Mik ArBer dans le forum Réseau
    Réponses: 0
    Dernier message: 05/11/2008, 23h18

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