Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    39

    grafica con c

    Se non ricordo male esiste una libreria (windows.h o wingdi.h) che permette di smanettare con la grafica in c, mi ricordo che un mio collega fece un programma in c che girava in dos con i colori e con i caratteri graficamente superiori a quelli che solitamente si vedono in dos. Mi sapreste dire se, è possibile realizzare questa cosa utilizzando windowsXP e dev-c++ (il programma deve girare sotto una finestra del prompt dei comandi dos di windos).

    Grazie mille.

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254

    Re: grafica con c

    Originariamente inviato da quadamge
    Se non ricordo male esiste una libreria (windows.h o wingdi.h) che permette di smanettare con la grafica in c, mi ricordo che un mio collega fece un programma in c che girava in dos con i colori e con i caratteri graficamente superiori a quelli che solitamente si vedono in dos. Mi sapreste dire se, è possibile realizzare questa cosa utilizzando windowsXP e dev-c++ (il programma deve girare sotto una finestra del prompt dei comandi dos di windos).
    Non è molto chiaro cosa vuoi fare. Poi quando parli di "grafica", beh dovresti specificare meglio. La "grafica" è un argomento molto vasto!
    Inquadriamo meglio il tuo problema: lasciamo perdere il Dos che ormai è defunto ... con il Dev-C++ si fanno applicazioni Win32. Il programma che devi fare è quindi, suppongo io, una applicazione Win32 "console". Immagino che tu voglia poter gestire l'output sulla console in modo completo: spostare il cursore dove vuoi, scrivere caratteri con gli attributi di colore, ecc... Giusto?
    Bene, in Windows puoi utilizzare le API Win32 per la gestione della console. Leggi <qui> tutta la documentazione su MSDN.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    39
    Per dos intendevo la console ovviamente, vorrei fare un programma che magari invece di avere lo sfondo nero e la scritta bianca (come da default) ha colori che decido io e magari un carattere tipo Times New Roman. Cmq ora vedo un po' su msdn.

    Grazie mille.

  4. #4
    si puo fare benissimo a le librerie da usare sono <graphics.h> e <conio.h> soprattutto
    cmq è lungo e non semplicissimo ma ce la si fa bene..
    io con amici ho fatto un rubamazzo tutto in grafica in c..
    e adesso sto lavorando in grafica in assembly!!
    ti sarà molto utile una guida ai comandi grafici.. se possiedi borland c++ utilizza il suo help che è molto completo...
    http://digilander.libero.it/vettolani

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Continuate a non aver ben chiaro quali siano le possibilità di utilizzo della console e come interagire con essa. Innanzitutto nella console non si possono specificare dei font di carattere in modo arbitrario, il font è quello parametrato (e che l'utente può eventualmente cambiare) in modo "globale" nelle proprietà della console (tasto destro sulla barra del titolo --> Proprietà --> Tipo di carattere).

    Utilizzare in modo completo la console in una applicazione "C" comporta l'utilizzo di librerie non standard. Una è la conio (conio.h). Nei "vecchi" compilatori Borland C++ per il Dos, c'era appunto questa libreria ma ora non ricordo esattamente quali funzioni conteneva. I moderni compilatori a 32 bit, potrebbero avere la conio, ma dipende dal compilatore. Il VC++ ce l'ha ma è molto "scarna" e con poche funzioni, il Dev-C++ mi sembra che ce l'abbia (ma non la conosco).
    La libreria "graphics.h" è un "ricordo" dei vecchi compilatori Borland C++ ma non c'entrava nulla con la console, si occupava della grafica nelle modalità grafiche CGA/VGA.

    In Win32 è comunque possibile utiizzare le API apposite per la console.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    39
    Non ho voluto complicarmi la vita, ho semplicemente cambiato il colore dello sfondo e dei caratteri con system("color81"), cha cambia i colori della console di window (sfondo grigio e testo blu). Ora ogni carattere è blu, però stavo pensando che magari c'è qualche funzione che mi permette di ottenere un colore diverso per ogni cosa che io desidero, se ad esempio volessi stampare a video:

    Nome: Mario
    Cognome: Rossi

    stampare Nome: e Cognome: di un colore e Mario e Rossi di un altro colore. C'è una funzione di qualche libreria che fa questo?

    Grazie mille.

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Originariamente inviato da quadamge
    Non ho voluto complicarmi la vita, ho semplicemente cambiato il colore dello sfondo e dei caratteri con system("color81"), cha cambia i colori della console di window (sfondo grigio e testo blu).
    È vero .... esiste questo comando, che credo di non aver mai usato in vita mia.

    Originariamente inviato da quadamge
    Ora ogni carattere è blu, però stavo pensando che magari c'è qualche funzione che mi permette di ottenere un colore diverso per ogni cosa che io desidero
    Certo che è possibile!! Lo ripeto, ci sono le API Win32 per la gestione della console, vedere qui tutta la documentazione su MSDN.

    Se non ti è chiaro cosa fanno/come usarle, dillo pure, non c'è problema.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    39
    Che cosa sono i puntatori?! poiché non so cosa sono i puntatori certamente non rientro nella categoria dei programmatori che non ha capito cosa siano (scherzo ovviamente)

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    39
    Sareste veramente gentili se mi deste un esempio di programma che stampa a schermo ad esempio:
    Mario Rossi


    (Mario in Blu e Rossi in verde ad esempio).


    Grazie mille.

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Beh ... potevi dare un'occhiata al link che ti era stato suggerito e potevi tentare di scrivere qualche linea ...

    codice:
    #include <windows.h> 
    
    #define FOREGROUND_WHITE (FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE)
    
    int main()
    {
       HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE); 
    
       SetConsoleTextAttribute(hStdout, FOREGROUND_WHITE | FOREGROUND_INTENSITY);
       printf("Cognome: ");
       SetConsoleTextAttribute(hStdout, FOREGROUND_RED | FOREGROUND_INTENSITY);
       printf("ROSSI\n");
    
       SetConsoleTextAttribute(hStdout, FOREGROUND_WHITE | FOREGROUND_INTENSITY);
       printf("Nome   : ");
       SetConsoleTextAttribute(hStdout, FOREGROUND_BLUE | FOREGROUND_INTENSITY);
       printf("MARIO\n");
    
       SetConsoleTextAttribute(hStdout, FOREGROUND_WHITE);
       return 0;
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.