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.
Version imprimable
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.
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
Bonjour,
Sous Windows, j'avais bidouillé une fonction. Si ça peut-être utile.L'appel s'effectue de la manière suivante.Code:
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 ; }
Code:
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 ; }
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.
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 :ccool: