|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jun 2005
Città: CH
Messaggi: 1058
|
[C]Avere una schermata verde e non nera..
come posso posizionare il cursore a date coordinate x,y,o cambiare colore della scrittura,ecc,il problema é ke uso xp e n ntrovo il config.sys in cui installare il file ansa.sys per gli effetti grafici di C. come posso fare??
![]() ![]() ![]() |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Se la tua intenzione è quella di sviluppare una applicazione Win32 console, puoi usare le API Win32 di gestione della console. Guarda questo semplice esempio: Codice:
#define STRICT #include <windows.h> #include <stdio.h> int main (int argc, char *argv[]) { HANDLE hStdOut; COORD coord; hStdOut = GetStdHandle (STD_OUTPUT_HANDLE); /* Imposta Giallo alta intensità su sfondo Rosso */ SetConsoleTextAttribute (hStdOut, BACKGROUND_RED | FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY); coord.X = 35; coord.Y = 15; SetConsoleCursorPosition (hStdOut, coord); printf ("PROVA\n"); /* Rimette a posto i colori di default */ SetConsoleTextAttribute (hStdOut, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE); return 0; }
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Jun 2005
Città: CH
Messaggi: 1058
|
[C]maggiori info
grazie per la risposta!comunque, mi sapresti consigliare un tutorial per questi comandi? perché vorrei riuscire ad impostare lo sfondo, e poi anche la possibilità di evidenziare(in un ipotetico menu) la scelta desiderata.grazie
|
![]() |
![]() |
![]() |
#4 | ||
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
-> Character-Mode Applications Quote:
Codice:
#define STRICT #include <windows.h> #include <stdio.h> BOOL ClearConsole (HANDLE hStdOut, WORD wAttributes) { COORD coord = { 0, 0 }; DWORD dwScreenSize, dwWritten; CONSOLE_SCREEN_BUFFER_INFO csbi; if (GetConsoleScreenBufferInfo (hStdOut, &csbi) == FALSE) return FALSE; dwScreenSize = csbi.dwSize.X * csbi.dwSize.Y; if (FillConsoleOutputCharacter (hStdOut, (TCHAR) ' ', dwScreenSize, coord, &dwWritten) == FALSE) return FALSE; if (FillConsoleOutputAttribute (hStdOut, wAttributes, dwScreenSize, coord, &dwWritten) == FALSE) return FALSE; if (SetConsoleCursorPosition (hStdOut, coord) == FALSE) return FALSE; if (SetConsoleTextAttribute (hStdOut, wAttributes) == FALSE) return FALSE; return TRUE; } int main (int argc, char *argv[]) { HANDLE hStdOut; hStdOut = GetStdHandle (STD_OUTPUT_HANDLE); ClearConsole (hStdOut, BACKGROUND_GREEN | FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY); printf ("Bianco su Verde, premi un tasto\n"); getchar (); ClearConsole (hStdOut, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE); return 0; }
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
||
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:55.