Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [C] come usare le frecce per scrollare?

    salve ho un piccolo problema, ho creato una rubrica telefonica testuale e per scorrere i contatti utilizzo i carattri s(su) e g(giù).
    come potrei fare per utilizzare le frecce invece?
    ho sentito che dovrei utilizzare due getch(); in quanto hanno bisogno di due sequenze di escape! è vero?
    www.matteosteri.it

  2. #2
    codice:
    #include <stdio.h>
    #include <conio.h>
    
    int main()
    {
        char c;
             
        while(c!=27) /* ESC per uscire */
        {
            c=getch();
            if(c==-32)
            {
                c=getch();
                if(c==72)
                    printf("Freccia SU\n");
                else if(c==80)
                    printf("Freccia GIU'\n");
                else if(c==77)
                    printf("Freccia DESTRA\n");
                else if(c==75)
                    printf("Freccia SINISTRA\n");
            }    
    
            if(c==0 || c==-32)
            {
                c=getch();
                if(c==59)
                    printf("F1 = 0, 59\n");
                else if(c==60)
                    printf("F2 = 0, 60\n");
                else if(c==61)
                    printf("F3 = 0, 61\n");
                else if(c==62)
                    printf("F4 = 0, 62\n");
                else if(c==63)
                    printf("F5 = 0, 63\n");
                else if(c==64)
                    printf("F6 = 0, 64\n");
                else if(c==65)
                    printf("F7 = 0, 65\n");
                else if(c==66)
                    printf("F8 = 0, 66\n");
                else if(c==67)
                    printf("F9 = 0, 67\n");
                else if(c==68)
                    printf("F10 = 0, 68\n");
                else if(c==-123)
                    printf("F11 = -32, -123\n");
                else if(c==-122)
                    printf("F12 = -32, -122\n");
            }        
            else
                printf("%c = %d\n", c, c);
        }
    
        return(0);
    }
    oppure... con le API:
    codice:
    #include <windows.h>
    #include <stdio.h>
    
    int main()
    {
        while(1)
        {
            if (GetKeyState (VK_LEFT) < 0)
                printf("LEFT ") ;
            if (GetKeyState (VK_RIGHT) < 0)
                printf("RIGHT ");
            if (GetKeyState (VK_UP) < 0)
                printf("UP ");
            if (GetKeyState (VK_DOWN) < 0)
                printf("DOWN ");
            if (GetKeyState (VK_ESCAPE) < 0)
                break;
    
            Sleep(100);
        }
    
        return 0;    
    }
    ...Terrible warlords, good warlords, and an english song

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.