PDA

View Full Version : سوال: سوال در مورد ()gotoxy جدید در ++visual C



هم دانشگاهی
دوشنبه 13 دی 1389, 22:38 عصر
سلام دوستان !

دوستان در اغلب تاپیک ها در مورد تابع جدید ()gotoxy صحبت شده ولی در مورد طرز کار این تابع چیز زیادی گفته نشده !!



#include<windows.h>
void gotoxy(int x,int y)
{
COORD pos;
HANDLE hConsole = GetStdHandle ( STD_OUTPUT_HANDLE );
if (INVALID_HANDLE_VALUE != hConsole)
{
pos.X = x;
pos.Y = y;
SetConsoleCursorPosition( hConsole, pos );
}
}

ممنون میشم اگه در مورد طرز کار این تابع و کلاس ها و توابع اون به من کمک کنین ! :بوس:

r00tkit
دوشنبه 13 دی 1389, 23:11 عصر
چیشو توضیح بدیم ؟ کدوم کلاس ؟ خودش توضیحه دیگه !!!

-----------
پ.ن: گوگل یعنی توضیح

هم دانشگاهی
سه شنبه 14 دی 1389, 06:08 صبح
منظورم اینه که مثلا COORD چی هست؟ و چی کار میکنه؟


یا مثلا این تابع چی کار میکنه ؟

HANDLE hConsole = GetStdHandle ( STD_OUTPUT_HANDLE );

r00tkit
سه شنبه 14 دی 1389, 10:08 صبح
# include< windows.h> توابع استاندارد api رو به برنامه اضافه می کنه

void یعنی تابع چیز بر نمی گردونه

(int x,int y) یعنی تابع 2 تا عدد می گیره که همون مختصات هستنند

} یعنی تابع شروع شد

COORD یعنی یه ساختاری برای نگه داری مختصات x,y در console

GetStdHandle یعنی یه تابعی که یه هندل به console می ده ( هندل ها یه عدد هستن برای یه جدولی به نام A Process' Kernel Object Handle Table که نقش ایندیکس رو بازی می کنه )

STD_OUTPUT_HANDLE به تابع می گه که منظورش هندل دیوایس استاندارد خروجی هستش که می شه همون console screen buffer


INVALID_HANDLE_VALUE داخل if می خواد بفهمه handle بدست امده معتبره یا نه یعنی هندل بدست امده رو با این مقایسه می کنه

pos.X = x; pos.Y = y; این هم مختصات رو می ده

SetConsoleCursorPosition این هم یعنی یه تابعی که یه هندل و مختصات می گیره و مختصات رو قرار می ده تو Console

} یعنی if تموم شد

} یعنی تابع gotoxy تموم شد


گوگل هم یعنی http://google.com

msdn هم یعنی www.msdn.com (http://www.msdn.com)

amir.bakhtiari
دوشنبه 09 اسفند 1389, 13:50 عصر
gotoxy(x,y); مختصات صفحه نمایشو میگیره مکان نما رو به مختصات مورد نظر میبره.