Come stampare qualcosa in base alle coordinate del mouse? C++

di Anonimizzato21288 il
4 risposte
Buonasera
Aggiungendo un cout<<pt.x<<pt.y; al codice le coordinate cambiano in base allo spostamento del puntatore e per ora tutto okay, ma quando utilizzo il gotoxy(pt.x,pt.y) il programma non stampa nel punto in cui si trova il mouse ma inizia a stampare in alto a sinistra.. come posso risolvere? Grazie a tutti
int main()
{
    HANDLE hConsole;
    int x=20,y=10;
    hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
    POINT pt;
    while(1)
    {
     GetCursorPos(&pt);
     ScreenToClient(GetConsoleWindow(),&pt);
     gotoxy(pt.x,pt.y);
     cout<<'c';
     Sleep(1);
     }
    system("pause");
    return 0;
}

4 Risposte

  • Gotoxy prevede coordinate di tipo carattere (linea e colonna) mentre le coordinate che ottieni sono del pixel ... quindi non c'entrano nulla ...
  • E' possibile effettuare una conversione? O c'è qualche modo per usare i pixel (come gotoxy intendo)
  • Devi fare semplici calcoli per trasformare pixel in caratteri ... basta sapere quanto è grande un carattere in pixel ... prova
  • Ho provato e trovato la conversione, ti ringrazio infinitamente
Devi accedere o registrarti per scrivere nel forum
4 risposte