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 :

Multi-fenêtrage en mode texte


Sujet :

Free Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Avatar de joreveur
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 293
    Par défaut Multi-fenêtrage en mode texte
    Bonjour,

    il y longtemps j'avais un Amstrad et en Basic on pouvait gérer des fenêtres en mode texte et c’était pratique.
    On pouvait afficher dans une fenêtre des infos en fonction de ce qu'on tapait dans une autre.
    Par exemple, on pouvait afficher un extrait du plan comptable dans une fenêtre et faire de la saisie dans une autre. Ou alors pour afficher de l'aide.

    Ma question est donc de savoir si c'est possible en Freepascal de simuler ce genre de propriétés ?
    J'ai bien pensé aux gotoxy mais c'est un peu lourd.

    Voici un peu de code Amstrad (on gérait même les couleurs de fond, etc)
    Code Basic : 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
     
    WINDOW
     
    WINDOW [ # <numéro de canal>,]<gauche>,<droite>,<haut>,<bas>
     
        10 MODE 0:BORDER 0:REM cible tv
        20 INK 0,0:INK 1,25:INK 2,23:INK 3,21
        30 INK 4,17:INK 5,6:INK 6,2:INK 7,26
        40 PAPER 0:CLS
        50 PAPER 1:WINDOW 2,4,1,18:CLS
        60 PAPER 2:WINDOW 5,7,1,18:CLS
        70 PAPER 3:WINDOW 8,10,1,18:CLS
        80 PAPER 4:WINDOW 11,13,1,18:CLS
        90 PAPER 5:WINDOW 14,16,1,18:CLS
        100 PAPER 6:WINDOW 17,19,1,18:CLS
        110 PAPER 7:WINDOW 2,19,19,25:CLS
    Merci de vos avis.

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 8 002
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    Free Pascal était fourni avec la bibliothèque Free Vision, compatible avec la bibliothèque Turbo Vision de Borland. L'IDE en mode texte de Free Pascal était d'ailleurs développé avec Free Vision. Mais j'ignore si les versions actuelles de Free Pascal supportent encore cette bibliothèque.

    Dans la négative, tu peux éventuellement te rabattre sur Virtual Pascal, qui est fourni avec Turbo Vision.
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  3. #3
    Membre chevronné
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 235
    Par défaut
    Les fenêtres du mode texte des Amstrad étaient quelque chose de beaucoup plus simple que FreeVision/TurboVision. Ce qui s'en rapproche le plus c'est la procédure window de l'unité Crt. Mais c'est bien limité par rapport aux fenêtre du basic des amstrad. On ne peut avoir qu'une fenêtre définie et les attributs de texte ne sont pas mémorisé.

    Comme j'avais du temps aujourd'hui je me suis amusé à faire une petite unité qui permet de creer plusieurs fenêtres texte comme sur amstrad. Cette unité vient en remplacement de l'unité Crt (en interne elle utilise l'unité Crt) et ajoute 2 procédures et une fonction pour gérer les fenêtres :

    • DefineWindow pour creer une fenetre
    • SelectWindow pour selectionner une fenetre
    • CurrentWindow pour connaître le numéro de la fenêtre selectionnée


    C'est du vite fait. Je n'ai testé que sous linux mais ça semble fonctionner.
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  4. #4
    Membre très actif
    Avatar de joreveur
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 293
    Par défaut
    bonjour,

    pour du vite fait ça m'épate... je suis sous Linux et ça fonctionne parfaitement.
    encore merci. je vais voir quelle application je vais pouvoir en faire.

    bien cordialement

  5. #5
    Membre très actif
    Avatar de joreveur
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 293
    Par défaut
    Citation Envoyé par batyann811 Voir le message
    Les fenêtres du mode texte des Amstrad étaient quelque chose de beaucoup plus simple que FreeVision/TurboVision. Ce qui s'en rapproche le plus c'est la procédure window de l'unité Crt. Mais c'est bien limité par rapport aux fenêtre du basic des amstrad. On ne peut avoir qu'une fenêtre définie et les attributs de texte ne sont pas mémorisé.

    Comme j'avais du temps aujourd'hui je me suis amusé à faire une petite unité qui permet de creer plusieurs fenêtres texte comme sur amstrad. Cette unité vient en remplacement de l'unité Crt (en interne elle utilise l'unité Crt) et ajoute 2 procédures et une fonction pour gérer les fenêtres :

    • DefineWindow pour creer une fenetre
    • SelectWindow pour selectionner une fenetre
    • CurrentWindow pour connaître le numéro de la fenêtre selectionnée


    C'est du vite fait. Je n'ai testé que sous linux mais ça semble fonctionner.
    Bonjour, je n'explique pas ce bug.. j'ai remplacé les WriteLn par des Write
    mais un i s'affiche dans une "marge" ? ça ne gère pas bien la dernière ligne ?

    Avez-vous une explication, une solution ? j'ai un peu regardé le code mais ça ne m'explique pas.

    merci
    Images attachées Images attachées  

  6. #6
    Membre chevronné
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 235
    Par défaut
    Cela vient d'un bug dans l'unité Crt de FreePascal (je l'ai signalée hier sur le bug tracker). Ce bug se produit uniquement quand une fenêtre est collée au bord droit de la l'écran.

    En attendant la correction du bug de l'unité FreePascal le plus simple est de ne pas utiliser la colonne la plus à droite de l'écran. J'ai fait une légère modification qui contourne ce bug.
    Fichiers attachés Fichiers attachés

  7. #7
    Membre très actif
    Avatar de joreveur
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 293
    Par défaut
    Merci,

    effectivement j'avais bien lu qu'il y avait un bug mais je pensais que votre 1ere version l'avait déjà corrigée.

    en tout cas, maintenant, ça fonctionne correctement.

    Question annexe quand sait-on que FreePascal corrige ce bug ?

    cordialement,

  8. #8
    Membre très actif
    Avatar de joreveur
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 293
    Par défaut
    Citation Envoyé par Alcatîz Voir le message
    Bonjour,

    Free Pascal était fourni avec la bibliothèque Free Vision, compatible avec la bibliothèque Turbo Vision de Borland. L'IDE en mode texte de Free Pascal était d'ailleurs développé avec Free Vision. Mais j'ignore si les versions actuelles de Free Pascal supportent encore cette bibliothèque.

    Dans la négative, tu peux éventuellement te rabattre sur Virtual Pascal, qui est fourni avec Turbo Vision.
    Bonjour et merci. j'ai un eu cherché sur le net mais je n'ai pas trouvé d'exemple de Free Vision

  9. #9
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 466
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 466
    Par défaut
    Il faut plutôt chercher des exemples de Turbo Vision, car Free Vision n'est plus que très peu utilisé (car Turbo Vision n'est plus que très peu utilisé aussi).

    Par exemple:
    http://mdalbin.developpez.com/tutori...l/turbovision/
    http://mdalbin.developpez.com/tutoriels/pascal/tvpa/

Discussions similaires

  1. affichage de tabulations en mode texte à partir de XSL
    Par closo dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 24/02/2004, 16h36
  2. [TP]Optimiser le rafraîchissement de l'écran en mode texte?
    Par Ponytear dans le forum Turbo Pascal
    Réponses: 8
    Dernier message: 15/02/2004, 11h12
  3. Probleme d'ecriture dans un fichier en mode Text
    Par bbozet dans le forum C++Builder
    Réponses: 3
    Dernier message: 14/01/2004, 13h46
  4. Retour au mode texte par défaut
    Par coca dans le forum x86 16-bits
    Réponses: 6
    Dernier message: 12/12/2002, 17h22
  5. Réponses: 5
    Dernier message: 11/12/2002, 12h31

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