Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Comando gotoxy
Forum - C/C++ - Comando gotoxy - Pagina 2

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
Rand (Ex-Member)
Pro


Messaggi: 163
Iscritto: 17/05/2005

Segnala al moderatore
Postato alle 12:14
Lunedì, 05/09/2005
hConsoleOutput e dwCursorPosition sono gli argomenti accettati dalla funzione.

Il primo (hConsoleOutput) pu? assumere due valori:
- GENERIC_READ => richiede l'accesso (in lettura) al buffer della console, abilitando il processo di lettura.

- GENERIC_WRITE => fa lo stesso ma per la scrittura (es. se devi cambiare colore ad una determinata porzione di testo, o quello dello sfondo, ecc..)

Il secondo dwCursorPosition invece, rappresenta le coordinate del cursore nello schermo e viene utilizzato tramite una struttura (come quella che ti ho gi? postato).

PM Quote
Avatar
Rand (Ex-Member)
Pro


Messaggi: 163
Iscritto: 17/05/2005

Segnala al moderatore
Postato alle 12:38
Lunedì, 05/09/2005
Ecco qua un esempio di come si usa la "nuova funzione gotoxy" ;)

#include <stdio.h>
#include <windows.h>

//definisco l'handle per la scrittura sul buffer console dei nuovi attributi
HANDLE Hout;
//struttura che contiene gli attributi correnti della console (colore testo, colore sfondo, posizione X cursore, posizione Y, ecc..)
CONSOLE_SCREEN_BUFFER_INFO ConsoleInfo;


int main();
int randgotoxy(int x, int y);

int main() {

    //ottengo l'handle
    Hout = GetStdHandle(STD_OUTPUT_HANDLE);
    
    randgotoxy(12,12);
    
    printf("#### Nuova Gotoxy ####\n\tBy Rand(rand@hackernetwork.com)\n\n");
    
    system("pause");
return 0;
}


int randgotoxy(int x, int y) {
    //setto le nuove coordinate del cursore...
    ConsoleInfo.dwCursorPosition.Y = x;
    ConsoleInfo.dwCursorPosition.X = y;
    
    //chiamo la funzione che aggiorna il buffer della console, con i nuovi attributi
    SetConsoleCursorPosition(Hout,ConsoleInfo.dwCursorPosition);

}

...se hai domande chiedi pure! :k:

Ultima modifica effettuata da Rand il 05/09/2005 alle 12:45
PM Quote
Avatar
skirk (Ex-Member)
Pro


Messaggi: 199
Iscritto: 01/09/2005

Segnala al moderatore
Postato alle 13:47
Lunedì, 05/09/2005
Grazie...scusa ma non avevo capito bene...:k:

PM Quote
Avatar
Rand (Ex-Member)
Pro


Messaggi: 163
Iscritto: 17/05/2005

Segnala al moderatore
Postato alle 14:24
Lunedì, 05/09/2005
Non c'? problema! ;)
...sono qua per aiutare e x essere aiutatoa anch'io! :k:

PM Quote
Avatar
skirk (Ex-Member)
Pro


Messaggi: 199
Iscritto: 01/09/2005

Segnala al moderatore
Postato alle 15:52
Lunedì, 05/09/2005
:k:

PM Quote
Avatar
hedo (Ex-Member)
Expert


Messaggi: 248
Iscritto: 03/12/2003

Segnala al moderatore
Postato alle 18:21
Martedì, 06/09/2005
Aggiungo solo che di questa API faccio largamente uso in Snake per spostare il cursore e ogni tanto, molto casualmente, diventa scarsamente performante... nn lo avete mai notato?

HeDo

PM Quote
Avatar
Rand (Ex-Member)
Pro


Messaggi: 163
Iscritto: 17/05/2005

Segnala al moderatore
Postato alle 18:33
Mercoledì, 07/09/2005
si Hedo... ma penso si tratti solo di quando la si utilizza in modo continuo, all'interno di un loop! Altrimenti, come in questo caso, non dovrebbe dare problemi. :-|

PM Quote
Avatar
Kain (Normal User)
Rookie


Messaggi: 42
Iscritto: 11/11/2005

Segnala al moderatore
Postato alle 19:19
Venerdì, 11/11/2005
faccio notare che per chi come utilizza il Dev-C++ la libreria conio.h la trovate:
http://conio.sourceforge.net
comprensiva della funzione clrscr() e gotoxy() e un ottima guida su come utilizzare e installare la libreria sul compilatore! Vi consiglio la versione 2 ovviamente (conio.h)

PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo