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

 C Discussion :

Dimensions de la console sous Windows.


Sujet :

C

  1. #1
    Membre éprouvé
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Cameroun

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

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Points : 1 006
    Points
    1 006
    Par défaut Dimensions de la console sous Windows.
    Bonjour,
    je suis plutot debutant en C, et j aimerai redimensionner ma console. J ai essaye les differente fonctions disponibles dans wincon.h debutant par SetConsole... mais sans aucun resultat.

    Quelqu un aurait t il une idee? Merci d avance.
    Win 10 64 bits / Linux Mint 18, - AMD A6 Quad: Py27 / Py35
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tutoriels, ...)
    - Tests déjà effectués

  2. #2
    Membre expérimenté
    Profil pro
    Développeur en systèmes embarqués retraité
    Inscrit en
    Mars 2006
    Messages
    946
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2006
    Messages : 946
    Points : 1 351
    Points
    1 351
    Par défaut
    Salut,

    Si tu veux le faire directement en C je ne sais pas. Par contre si tu veux simplement une console plus grande pour y appeler un programme en C, Il suffit de créer un raccourci vers command.com et d'éditer les propriétés de ce raccourci. On y trouve toutes les propriétés qui vont bien, couleurs, polices, nombre de lignes et de colonnes, etc...

    A+

    Pfeuh

  3. #3
    Membre éclairé
    Avatar de Elijha
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2003
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2003
    Messages : 314
    Points : 742
    Points
    742
    Par défaut
    Bonjour,

    Sous Windows, j'avais bidouillé une fonction. Si ça peut-être utile.
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    /*!
     * \fn          int setConsoleScreenBufferInfo(COORD dwSize)
     * \brief       Modifie la taille de la console en cours.
     * \param[in]   dwSize  Spécifie la nouvelle taille de la console.
     * \return      Si l'opération a réussi, retourne \c EXIT_SUCCESS,
     *              sinon \c EXIT_FAILURE.
     * \note        To get extended error information, call GetLastError.
     */
    int setConsoleScreenBufferInfo(COORD dwSize)
    {   HANDLE hConsoleOutput = GetStdHandle(STD_OUTPUT_HANDLE) ;
        COORD bakDwSize = dwSize ;
        SMALL_RECT srctWindow ;
        CONSOLE_SCREEN_BUFFER_INFO csbiInfo ;
     
        // Obtenir les informations de la console
        if(!GetConsoleScreenBufferInfo(hConsoleOutput, &csbiInfo)) return EXIT_FAILURE ;
     
        // Adapter le buffer de la console en fonction des tailles maximales
        dwSize.X = (dwSize.X>csbiInfo.srWindow.Right)?dwSize.X:csbiInfo.dwSize.X ;
        dwSize.Y = (dwSize.Y>csbiInfo.srWindow.Bottom)?dwSize.Y:csbiInfo.dwSize.Y ;
        if(!SetConsoleScreenBufferSize(hConsoleOutput, dwSize)) return EXIT_FAILURE ;
     
        // Modifier la taille de la console
        dwSize = bakDwSize ;
        srctWindow = csbiInfo.srWindow ;
        srctWindow.Right = dwSize.X - 1 ;
        srctWindow.Bottom = dwSize.Y - 1 ;
        if(!SetConsoleWindowInfo(hConsoleOutput, TRUE, &srctWindow)) return EXIT_FAILURE ;
     
        // Adapter la taille du buffer de la console à sa taille (pas d'ascenseurs)
        dwSize = bakDwSize ;
        if(!SetConsoleScreenBufferSize(hConsoleOutput, dwSize)) return EXIT_FAILURE ;
     
        return EXIT_SUCCESS ;
    }
    L'appel s'effectue de la manière suivante.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    int main(int argc, char *argv[])
    {   COORD dwSize = {120, 25} ;
     
        SetConsoleTitle("Mon Terminal") ;	// Réglage du titre
        if(setConsoleScreenBufferInfo(dwSize)) {	// Réglage des coordonnées
            printf("setConsoleScreenBufferInfo (%ld)\n", GetLastError());
            return EXIT_FAILURE ;
        }
     
        return EXIT_SUCCESS ;
    }
    - Une réponse vous a été utile ? Remerciez son auteur en cliquant le pouce vert !
    - Travailler dur n'a jamais tué personne, mais pourquoi prendre le risque (Edgar Bergen)

  4. #4
    Membre éprouvé
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Cameroun

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

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Points : 1 006
    Points
    1 006
    Par défaut
    Bonjour,
    @pfeuh merci, pour le raccourci je suis au courant, mais je voudrais que la modification se fasse directement a la compilation un peu comme en Pascal.

    @Ehlijia je pense que c est ce que je cherche. Je rentre faire des tests et je te tiens au courant.

    Merci a vous.
    Win 10 64 bits / Linux Mint 18, - AMD A6 Quad: Py27 / Py35
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tutoriels, ...)
    - Tests déjà effectués

  5. #5
    Membre éprouvé
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Cameroun

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

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Points : 1 006
    Points
    1 006
    Par défaut
    Bonjour,
    @Elijha: Merci beaucoup, c est que je vais adopter. J ai d abord pense me servir de "SetConsoleWindowInfo" pour definir les dimensions minimales de la fenetre mais sans succes. Bref ton code c est
    Win 10 64 bits / Linux Mint 18, - AMD A6 Quad: Py27 / Py35
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tutoriels, ...)
    - Tests déjà effectués

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

Discussions similaires

  1. [C++][FAQ] des accents et de la console sous windows
    Par Luc Hermitte dans le forum Contribuez
    Réponses: 0
    Dernier message: 22/03/2008, 18h48
  2. [C] utiliser uniquement la console sous windows
    Par Bornerdogge dans le forum SDL
    Réponses: 14
    Dernier message: 28/09/2007, 19h18
  3. [C++] Programme console sous Windows
    Par Invité4 dans le forum Windows
    Réponses: 4
    Dernier message: 17/08/2006, 21h53
  4. Réponses: 6
    Dernier message: 20/12/2005, 00h03
  5. [web] [PerlTk] Console sous windows
    Par Cyspak dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 28/04/2004, 14h21

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