Em có đang làm một bài tập là Chạy 1 chữ trên console với các chức năng:
- Ấn các phím điều khiển lên xuống để tăng/ giảm tốc độ.
- Ấn các phím điều khiển sang trái/ phải để điều khiểu chiều chạy của chuỗi (vd: ấn phím sang phải chữ sẽ chạy từ trái sang phải, và trường hợp ngược lại)
.
Em có code để chữ chạy nhưng cái chức năng thì em không hiểu sao em nhấn phím UP nhưng tốc độ không thể tăng nhanh được ạ nên chưa hoàn thiện hết các chức năng!
Mong mọi người góp ý, em xin cảm ơn!
#include<iostream>
using namespace std;
#include<conio.h>
#include<iomanip>
#include<windows.h>
#include<cstring>
void gotoxy(short x,short y)
{
HANDLE hConsoleOutput;
COORD Cursor_an_Pos = {x,y};
hConsoleOutput = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hConsoleOutput,Cursor_an_Pos);
}
void move(int x, int y, int s){
string c = "HELLO, NICE TO MEET YOU!";
while(y>=0){
cout<<" ";
x++;
gotoxy(x, y);
cout<<c;
Sleep(s);
gotoxy(x-1, y); cout<<" ";
if(x == 80){
system("cls");
cout<<" ";
x = 0; x++;
gotoxy(x, y);
Sleep(s);
}
}
}
void control(){
int t = 600;
while(t>0){
move(10, 10, t);
char a = getch();
while(a == GetAsyncKeyState(VK_UP)){
t -= 100;
move(10, 10, t);
}
}
}
int main(){
control();
getch();
return 0;
}