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++ - Verificarsi di una cosa quando si preme un tasto
Forum - C/C++ - Verificarsi di una cosa quando si preme un tasto

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
skynet1994 (Normal User)
Pro


Messaggi: 120
Iscritto: 16/06/2010

Segnala al moderatore
Postato alle 12:53
Venerdì, 09/07/2010
Salve a tutti, volevo sapere come potrei far succedere una cosa quando premo un tasto.
Non conosco ancora benissimo il C/C++ e stavo tentando di realizzare un semplice programma: una calcolatrice, ma non so esattamente come fare a far Sommare 2 Numeri se premo A, sottrarre se premo B, ce so come far addizzionare e sottrarre ecc 2 numeri ma non so come far accadere cio quando premo i tasti. Questo è il codice per farvi capire come voglio fare

Codice sorgente - presumibilmente C++

  1. #include "stdafx.h"
  2. #include <windows.h>
  3. #include <stdio.h>
  4. #include <math.h>
  5.  
  6.  
  7. void color(unsigned short color)
  8. {
  9. HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);
  10. SetConsoleTextAttribute(hCon,color);
  11. }
  12.  
  13.  
  14. int _tmain(int argc, _TCHAR* argv[])
  15. {
  16.         //Avvio programma
  17.         color(10);
  18.     printf("\n");
  19.         color (9);
  20.         printf(" ################################\n ");
  21.         color (9);
  22.         printf("#");
  23.         color(10);
  24.         printf(" Calcolatrice 1.01");
  25.         color(9);
  26.         printf("            #\n");
  27.        
  28.         printf(" #");
  29.         color(10);
  30.         printf(" Creata da Giacomo Pettenello");
  31.         color(9);
  32.         printf(" #\n");
  33.  
  34.         printf(" ################################\n");
  35.         printf("\n");
  36.     color(13);
  37.         printf(" Selezionare Operazione: \n");
  38.         printf("\n");
  39.         color(10);//Colore Verde = Premi Tasto A per far sommare 2 Numeri
  40.         printf(" A");
  41.     color(15);
  42.         printf("ddizzione\n");
  43.         printf("\n");
  44.         color(10);//Colore Verde = Premi Tasto B per far sottrarre 2 numeri
  45.         printf(" S");
  46.         color(15);
  47.         printf("ottrazione\n");
  48.     printf("\n");
  49.         color(10);//Colore Verde = Premi Tasto M per far moltiplicare 2 Numeri
  50.         printf(" M");
  51.         color(15);
  52.         printf("oltiplicazione\n");
  53.         printf("\n");
  54.         color(10);//Colore Verde = Premi Tasto D per far Dividere
  55.         printf(" D");
  56.         color(15);
  57.         printf("ivisione\n");
  58.         printf("\n");
  59.         color(10);//Colore Verde = Premi tasto E per Uscire dal Programma
  60.     printf(" E");
  61.         color(15);
  62.         printf("sci dal Programma\n");
  63.         printf("\n");
  64.         color(13);
  65.         printf(" Selezionare un Operazione:  \n");
  66.         system("pause"); // Codice da usare solo nei test della schermata, rimuovere successivamente
  67.        
  68.         return 0;
  69. }


PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 13:08
Venerdì, 09/07/2010

nelle applicazioni console di solito si assegna ad ogni voce del menù un numero progressivo, si fa inserire all'utente il numero del comando e quindi con uno switch eseguire il comando specificato.


PM Quote
Avatar
skynet1994 (Normal User)
Pro


Messaggi: 120
Iscritto: 16/06/2010

Segnala al moderatore
Postato alle 13:10
Venerdì, 09/07/2010
Si è vero mi ero dimenticato dello switch, ora provero, giusta una domandina: lo switch corrisponde al Select Case del BASIC, Visual Basic?.. grazie

PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 13:16
Venerdì, 09/07/2010
Testo quotato

Postato originariamente da skynet1994:

Si è vero mi ero dimenticato dello switch, ora provero, giusta una domandina: lo switch corrisponde al Select Case del BASIC, Visual Basic?.. grazie



si

PM Quote
Avatar
skynet1994 (Normal User)
Pro


Messaggi: 120
Iscritto: 16/06/2010

Segnala al moderatore
Postato alle 13:23
Venerdì, 09/07/2010
Non riesco a capire come funziona lo switch sulla guida ke mi hai postato non riesco a capire bene come fare.. potresti postarmi un esempio:

Se clicco il tasto 1, stampo sullo schermo con printf("Funziona Tasto 1")

Se clicco il tasto 2, stampo sullo schermo con printf("Funziona Tasto 2")


PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 14:17
Venerdì, 09/07/2010
Testo quotato

Postato originariamente da skynet1994:

Non riesco a capire come funziona lo switch sulla guida ke mi hai postato non riesco a capire bene come fare.. potresti postarmi un esempio:

Se clicco il tasto 1, stampo sullo schermo con printf("Funziona Tasto 1")

Se clicco il tasto 2, stampo sullo schermo con printf("Funziona Tasto 2")




http://www-numi.fnal.gov/offline_software/srt_public_conte ...

lo switch funziona come una serie di if in cascata :)


PM Quote
Avatar
skynet1994 (Normal User)
Pro


Messaggi: 120
Iscritto: 16/06/2010

Segnala al moderatore
Postato alle 16:09
Venerdì, 09/07/2010
Problema risolto ma non posso visualizzare i caratteri UniCode ES: ╔═══╗
                                                                   ║   ║
                                                                   ╚═══╝
═ --> ALT+205
e cosi via... ma dice ke ci sono dei problemi e quando lo testo non escono fuori questi caratteri bensi punti interrogativi.. invece questo funzionava in BASIC.. forse perchè l'ambiente di lavoro era a 16 bit??

PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 16:50
Venerdì, 09/07/2010
Testo quotato

Postato originariamente da skynet1994:

Problema risolto ma non posso visualizzare i caratteri UniCode ES: ╔═══╗
                                                                   ║   ║
                                                                   ╚═══╝
═ --> ALT+205
e cosi via... ma dice ke ci sono dei problemi e quando lo testo non escono fuori questi caratteri bensi punti interrogativi.. invece questo funzionava in BASIC.. forse perchè l'ambiente di lavoro era a 16 bit??



... ma che vuoi fare, le finestre in dos? lascia perdere :)

PM Quote
Avatar
giuseppe93 (Ex-Member)
Pro


Messaggi: 166
Iscritto: 02/08/2009

Segnala al moderatore
Postato alle 16:27
Sabato, 10/07/2010
Testo quotato



... ma che vuoi fare, le finestre in dos? lascia perdere :)


secondo me vuole solo fare tabelle o cornicette!
comunque ti basta basta fare cout<<char(205); per scrivere ═
(ma questa non è la sezione c++:-?)

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo