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

Free Pascal Discussion :

[Free Pascal] Curseur dans le mode console


Sujet :

Free Pascal

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 19
    Par défaut [Free Pascal] Curseur dans le mode console
    Bonjour
    Malgré ma lecture de la faq à ce sujet je n'arrive pas à faire disparaitre mon curseur dans la fenetre texte. Je voudrais qu'il n'apparaisse jamais dans tout le programme comment je fais?
    Merci d'avance
    Xavier

  2. #2
    Membre très actif
    Avatar de diden138
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    714
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 714
    Par défaut salut
    impossible tu veut faire disparaitre le curseur enmode console je crois pas que tu peux faire ca en mode console en mode graphique oui.

  3. #3
    Membre émérite Avatar de Tuxico
    Profil pro
    Étudiant
    Inscrit en
    Août 2003
    Messages
    662
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2003
    Messages : 662
    Par défaut
    utilise la fonction delay(); si tu veux par exemple que le programme s'interrompe .

  4. #4
    Membre émérite Avatar de Sheriff
    Inscrit en
    Octobre 2004
    Messages
    608
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 608
    Par défaut
    Salut !
    je crois que le curseur prend la couleur du texte, c'est bien ça ?
    dans ce cas, après avoir écrit ton texte tu fais un textcolor(couleur_de_l_arrière_plan) et ça fait disparaitre le curseur.
    mais bon, je ferais bien d'essayer avant d'en reparler...
    a+

  5. #5
    Membre Expert
    Avatar de Eric Sigoillot
    Inscrit en
    Mars 2002
    Messages
    1 212
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 212
    Par défaut
    Bonjour,

    Les consoles ne sont pas normalisées. Il est très difficile de définir une opération autre que "écrire dans la console".
    L'utilisation des couleurs, le déplacement à l'intérieur de celle-ci, l'effacement, ... sont des notions spécifiques à la plateforme utilisée.

    D'où la question qui tue, sur quelle plateforme veux-tu effacer ton curseur ? Dos ? Windows ? Linux ? Autre ?

    @++

  6. #6
    Membre très actif
    Avatar de diden138
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    714
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 714
    Par défaut salut,
    j'ai questioner mon prof d'info im m'a dit que c'etait impossible d'enlever le curseur en mode console a moin de le camoufler avec l'arriere plan comme la dit sheerif

  7. #7
    Membre Expert
    Avatar de Eric Sigoillot
    Inscrit en
    Mars 2002
    Messages
    1 212
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 212
    Par défaut
    C'est faux, il est tout à fait possible de le faire disparaître sous Dos... Donc la connaissance de l'environnement est nécessaire.

  8. #8
    HRS
    HRS est déconnecté
    Membre chevronné
    Avatar de HRS
    Inscrit en
    Mars 2002
    Messages
    678
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 678
    Par défaut
    comme l'indique hdd34, cela dépend de l'OS.

    Avec Windows, on utilise les API WIN32
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    program cvis;
    uses windows;
     
    procedure Curseur_Visible (rep :  boolean);
    var ecran_handle : Thandle;
        curseur_info : TConsoleCursorInfo;
        ok : boolean;
    begin
         ecran_handle := GetStdHandle (STD_OUTPUT_HANDLE);
         curseur_info.dwSize := 10;
         curseur_info.bvisible := rep ;
         ok := SetConsoleCursorInfo (ecran_handle,curseur_info);
    end;
     
    begin
         writeln ('curseur disparait, appuyez sur entree');
         Curseur_Visible (false);
         readln;
         writeln ('curseur revient, appuyez sur entree');
         Curseur_Visible (true);
         readln;
    end.

  9. #9
    Membre éprouvé
    Avatar de Stormy_Ordos
    Profil pro
    Expert sécurité informatique
    Inscrit en
    Mars 2005
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Expert sécurité informatique

    Informations forums :
    Inscription : Mars 2005
    Messages : 91
    Par défaut
    Pour dos, on peut intégrer de l'assembleur, comme ici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    begin                                {procédure principale}
         asm
            mov ax, 0100h
            mov cl, 010h
            mov ch, 010h
            int 10h
         end;
     
         {Curseur désormais invisible}
         {....}
     
         asm
            mov ax, 0100h
            mov cl, 020h
            mov ch, 020h
            int 10h
         end;
         {Restaure le curseur standard}
     
    end.
    On utilise pour ça la sous-fonction 01 de l'interruption graphique 10h.
    Plus de détails sur les interruptions : http://lrs.fmi.uni-passau.de/support...upt-57/INT.HTM

    a++

  10. #10
    Membre émérite
    Inscrit en
    Juin 2005
    Messages
    644
    Détails du profil
    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2005
    Messages : 644
    Par défaut
    voir l'excellent livre "The programmer's PC source book" de thom Hogan. On y trouve en détails tous les interrupts dos + bien d'autres choses.

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

Discussions similaires

  1. Pas de retour à la ligne dans PHP mode console
    Par Fluxy dans le forum Langage
    Réponses: 2
    Dernier message: 29/09/2008, 23h20
  2. [Free Pascal] Souris inopérante dans l'IDE
    Par Kal94 dans le forum Free Pascal
    Réponses: 7
    Dernier message: 01/05/2006, 17h25
  3. Fenetre mode console dans une win32
    Par had182 dans le forum Windows
    Réponses: 3
    Dernier message: 28/12/2005, 19h21
  4. positionner le curseur dans la console
    Par sympho dans le forum C
    Réponses: 8
    Dernier message: 23/12/2005, 18h26
  5. [Free Pascal] Intégrer des valeurs dans un menu dynamique
    Par boullery dans le forum Free Pascal
    Réponses: 16
    Dernier message: 30/03/2005, 17h04

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