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

Delphi Discussion :

Quickreport et la touche entrée pour imprimer


Sujet :

Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 100
    Points : 118
    Points
    118
    Par défaut Quickreport et la touche entrée pour imprimer
    Bonjour tout le monde

    j'utilise Delphi 7 et quickreport pour l'impression de mes états de sorties
    Je procède comme ceci : je visualise puis j'imprime mon état avec la souris,
    mon objectif c'est l'impression avec la [touche entrée]

    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 031
    Points : 40 930
    Points
    40 930
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    cela implique certainement (mes souvenirs quickreport ne sont pas récent) de faire ne sorte que le bouton d'impression de la prévisualisation soit le bouton par défaut si j'ai bien compris la demande.

    À mon avis c'est seulement en utilisant son propre "prévisualisateur" (TQRPreview si ma mémoire est bonne) que ce sera possible.
    Comment ? Je ne me souviens plus exactement mais inspirez-vous de ce que j'ai pu écrire dans ce forum, (forum où aurait dû être posé cette question) ,
    j'en parle par exemple ici
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 100
    Points : 118
    Points
    118
    Par défaut
    Bonjour tout le monde,

    Merci SergioMaster pour la réponse, je n'ai pas trouvé de solution à mon problème dans les liens que vous avez proposé,
    il me semble que quickreport ne gère pas les évenements pendant la prévisualisation des états,
    j'ai même essayé d'utiliser ONKEYDOWN de la forme , rien ne marche, apparemment aucune relation entre la forme et quickrep.
    Je continue mes recherches et je vous tiendrai au courant.
    Merci.

  4. #4
    Membre actif
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Décembre 2014
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Consultant fonctionnel

    Informations forums :
    Inscription : Décembre 2014
    Messages : 105
    Points : 235
    Points
    235
    Par défaut
    Bonjour
    J'avais cela fait (il y a ...). J'avais mis la fenêtre Preview dans le panel d'une autre Form qui elle avait un tButton avec Default à True. Le panel "parent" contenait le preview et le tButton de la Form récupérait le ENTER pour imprimer, ou j'utiliser l'évènement OnKeypressed de la form (avec Form.KeyPreview à true) pour récupérer le #13 du ENTER. Les deux fonctionnaient en D7.
    solilog

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 031
    Points : 40 930
    Points
    40 930
    Billets dans le blog
    62
    Par défaut
    C'est exactement à ce procédé que je pensais
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 100
    Points : 118
    Points
    118
    Par défaut
    Bonjour,

    Merci Solilog, j'ai compris un petit peut le principe de ton idée,
    je vais essayer de le mettre en application.

    Merci.

  7. #7
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 100
    Points : 118
    Points
    118
    Par défaut
    Bonjour solilog,

    Bête et discipliné comme un robot, j'ai suivi pas à pas les étapes que tu as mentionné
    dans ta proposition et l'impression ne se fait que par la souris, je ne sais pas ce que j'ai loupé,
    je ne perd pas espoir, je continu mes recherches.

    Merci.

  8. #8
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 031
    Points : 40 930
    Points
    40 930
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    et si vous nous fournissiez la partie code ?
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  9. #9
    Membre actif
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Décembre 2014
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Consultant fonctionnel

    Informations forums :
    Inscription : Décembre 2014
    Messages : 105
    Points : 235
    Points
    235
    Par défaut
    Hello,
    Comme le dit Sergio, avec du code c'est mieux.
    Pouvez-vous m'indiquer (au moins çà):
    - le code où la QuickReport form est créée (c'est là qu'il faut la mettre dans le panel (QRepForm.Parent := Panel1);
    - le code où le preview est appelé
    Et je regarderai ce soir.
    solilog

  10. #10
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 100
    Points : 118
    Points
    118
    Par défaut
    Bonjour,

    Merci infiniment pour vos soutiens ,
    Je vais vous résumer la situation, j'ai deux formes :
    - fetudiant : La forme qui contient le bouton qui fait l'appel de l'impression
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bl_e.quickrep1.preview;

    - bl_e : La forme qui contient le panel qui lui contient le quickrep1 et le tbutton
    le keypreview de BL_E est TRUE
    le TBUTTON est à DEFAULT:= true;
    au niveau du ONKEYPRESS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if key=#13 then quickrep1.Print;
    la prévisualisation se fait correctement, mais l'impression ne se fait qu'avec la souris, la touche Entrée ne fonctionne toujours pas

    Bizarre ce Quickreport

  11. #11
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 031
    Points : 40 930
    Points
    40 930
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    ce n'est pas assez comme information. On vous demande un dfm, un .pas voir un .dpr (pas forcément celui de votre programme).
    Un programme test, sans même des données, peut suffire à voir où vous vous fourvoyez. Dans vos explications je ne vois même pas le TQRPreview
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  12. #12
    Membre actif
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Décembre 2014
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Consultant fonctionnel

    Informations forums :
    Inscription : Décembre 2014
    Messages : 105
    Points : 235
    Points
    235
    Par défaut
    Bonjour
    Bon c'est pas mal tu arrives à afficher le preview dans un panel, on avance.
    Je n'ai plus QR avec ce Delphi, je vais t'aider sans.
    Tu affiches ton Preview comme tu le fais déjà.
    1 - sans tButton pour le print
    - la form qui contient le panel (qui affiche le preview) est KeyPreview=True
    - la procedure OnKeyPressed de cette form contient ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm2.FormKeyPress(Sender: TObject; var Key: Char);
    begin
      if (Key=#13) and assigned(bl_e) and bl_e.Visible then
        bl_e.quickrep1.print;
    end;
    J'ai ajouté assigned() et visible pour ne pas que la form tente d'imprimer hors preview.

    2 - avec tButton contenant le print
    - le bouton doit être hors du panel qui lui est bloqué par le preview. Ou tu le mets dans un autre panel en dessous),
    - il est bien en default=True
    - il contient + ou - le même le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm2.Button1Click(Sender: TObject);
    begin
      if assigned(bl_e) and bl_e.Visible then
        bl_e.quickrep1.print;
    end;
    Attention c'est 1 ou 2, tu ne mets pas de tButton si tu utilises 1
    et inversement pas de KeyPreview ni FormKeyPress() si tu tilises 2
    solilog

  13. #13
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 100
    Points : 118
    Points
    118
    Par défaut
    Bonjour,

    Je mets à votre disposition en liaison un petit programme en y intégrant les dernières indications de Solilog.
    merci
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/05/2008, 10h08
  2. touche 'entré' pour submit, liste deroulante
    Par Azilal dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 10/04/2008, 15h23
  3. Touche Entrée pour valider
    Par sly60 dans le forum Débuter
    Réponses: 2
    Dernier message: 30/01/2008, 16h17
  4. Réponses: 10
    Dernier message: 02/01/2008, 23h02
  5. [WebForms]Comment utiliser la touche entrée pour valider un formulaire ?
    Par yonialhadeff dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 10/05/2006, 12h29

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