真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

c語言中操作光標的函數(shù) c語言中光標定位

C語言定位光標

用Win32 API

創(chuàng)新互聯(lián)致力于互聯(lián)網(wǎng)品牌建設與網(wǎng)絡營銷,包括做網(wǎng)站、網(wǎng)站制作、SEO優(yōu)化、網(wǎng)絡推廣、整站優(yōu)化營銷策劃推廣、電子商務、移動互聯(lián)網(wǎng)營銷等。創(chuàng)新互聯(lián)為不同類型的客戶提供良好的互聯(lián)網(wǎng)應用定制及解決方案,創(chuàng)新互聯(lián)核心團隊10年專注互聯(lián)網(wǎng)開發(fā),積累了豐富的網(wǎng)站經(jīng)驗,為廣大企業(yè)客戶提供一站式企業(yè)網(wǎng)站建設服務,在網(wǎng)站建設行業(yè)內(nèi)樹立了良好口碑。

SetConsoleCursorPosition是API中設置桐汪控制臺光標位置的函數(shù)。

#include stdio.h

#include windows.h

int main(void)

{

HANDLE hOut;

COORD pos= {0,2}; /* 光標的起始位(第1列,第3行) 0是謹仿第1列 2是第祥輪纖3行*/

hOut = GetStdHandle(STD_OUTPUT_HANDLE);

SetConsoleCursorPosition(hOut, pos);

printf("定位光標位置(%d,%d)\n",pos.X,pos.Y);

return 0;

}

誰有c語言的鼠標操作函數(shù)集

分類: 電腦/網(wǎng)絡 程序設計 其他編程語言

問題描述:

誰有c語言的鼠標操作函數(shù)集,越多越好

解析:

我給你個程序,里面涉及到鼠標操作團悉,具體你可以下載《DOS編程大全》這本書,有關于鼠標的。

還不懂,加我QQ(先聲明我也是菜鳥):***********。注明:C語言

#includedos.h

#includegraphics.h

#includeconio.h

#includestdio.h

union REGS regs;

int X__max,Y__max,x_max,y_max;

void Initgr(void) /*屏幕初始化成圖形模式*/

{

int w,h,grdriver=DETECT,grmode;

registerbgidriver(EGAVGA_driver);

initgraph(grdriver,grmode,"");/*在雙引號中可加你tc放的路徑,但要在tc里有EGAVGA.BGI這個來初始圖形*/

if(graphresult())/*若調用不成功,退出*/

{printf("\n 調用失?。則枝n");

exit(1);

}

X__max=getmaxx();/*求橫向象點坐標數(shù)*/

Y__max=getmaxy();/*求縱向象點坐標數(shù)*/

getaspectratio(w,h);/*求縱橫比*/

x_max=1000; /*設置屏幕坐標的寬度*/

y_max=x_max*(float)Y__max*h/((float)X__max*w);

}

int Msinit(int Xlo,int Xhi,int Ylo,int Yhi)/*鼠標初始化*/

{int retcode;

regs.x.ax=0;/塌盯乎*初始化鼠標*/

int86(0x33,regs,regs);

retcode=regs.x.ax;

if(retcode==0) return 0;

regs.x.ax=7;/*設置鼠標X方向的移動范圍*/

regs.x.cx=Xlo;

regs.x.dx=Xhi;

int86(0x33,regs,regs);

regs.x.ax=8;/*設置鼠標Y方向的移動范圍*/

regs.x.cx=Ylo;

regs.x.dx=Yhi;

int86(0x33,regs,regs);

regs.x.ax=15;/*設置mickey與象素的比,這各會影響鼠標移動速度*/

regs.x.cx=(int)(x_max/X__max);

regs.x.dx=(int)(y_max/Y__max);

int86(0x33,regs,regs);

return retcode;

}

int Msread(int *px,int *py,int *pbuttons)/*讀鼠標位置及狀態(tài)*/

{static int x0=320,y0=240,but0=0;

int xnew,ynew,ch;

do{

if(kbhit()){

ch=getch();

if(ch==13){

*pbuttons=1;

return -1;

}

else return ch; /*返回鍵盤輸入*/

}

regs.x.ax=3; /*調用功能3,讀鼠標位置及狀態(tài)*/

int86(0x33,regs,regs);

xnew=regs.x.cx;/*返回鼠標當前的位置的X坐標*/

ynew=regs.x.dx;/*返回鼠標當前的位置的Y坐標*/

*pbuttons=regs.x.bx;/*返回鼠標當前的狀態(tài)*/

}while(xnew==x0ynew==y0*pbuttons==but0);

/*當鼠標狀態(tài)改變或位置改變終止循環(huán)*/

but0=*pbuttons;/*將鼠標狀態(tài)保存到靜態(tài)變量中*/

x0=xnew;y0=ynew;/*將鼠標位置保存到靜態(tài)變量中*/

*px=xnew;*py=(int)(y_max-ynew);

return -1;

}

int Xpixel(int x)/*由象素坐標變換為屏幕坐標*/

{ return (int)((long)X__max*x/x_max);}

int Ypixel(int y)

{ return Y__max-(int)((long)Y__max*y/y_max);}

void Cursor(int x,int y) /*顯示十字光標*/

{int X=Xpixel(x),Y=Ypixel(y),color;

char *str=" \0";

line(X-8,Y,X-3,Y);

line(X,Y-8,X,Y-4);

line(X+3,Y,X+8,Y);

line(X,Y+4,X,Y+8);

color=getcolor();

setcolor(BLACK);

outtextxy(X__max-100,10,str);/*刪除前次顯示值*/

sprintf(str,"%d,%d",x,y);

setcolor(WHITE);

outtextxy(X__max-100,10,str);/*在屏幕右上角顯示當前光標的坐標*/

setcolor(color);

}

main()

{int buttons,X,Y,x,y,a,b;

char i;

Initgr();/*初始化圖形屏幕*/

setcolor(EGA_LIGHTRED);/*設置屏幕前景色*/

line(1,1,X__max-1,1); /*在屏幕四周畫一矩形*/

line(1,1,1,Y__max-1);

line(X__max-1,1,X__max-1,Y__max-1);

line(1,Y__max-1,X__max-1,Y__max-1);

setcolor(EGA_WHITE);

printf("\n 按鼠標右鍵終止程序\n");

printf(" 然后按任意鍵退出");

seritemode(XOR_PUT);/*設置屏幕輸出模式*/

Msinit(0,(int)x_max,0,(int)y_max);/*初始化鼠標*/

a=x_max;b=y_max;

x=0;

Cursor(a,b); /*在a=x_max;b=y_max;處畫指針*/

while(x!=2)

{Msread(X,Y,x);

Cursor(a,b); /*刪除之前的鼠標,因為屏幕輸出模式的關系*/

if(x==1){

a=(int)(X*1.0/x_max*X__max);b=(int)((y_max-Y)*1.0/y_max*Y__max);

circle(a,b,1); } /*畫點*/

Cursor(X,Y);

a=X;b=Y;

}

Cursor(X,Y);/*再調用一次把原來的指針削掉*/

getch();

closegraph();

}

光標定位函數(shù)怎么用

C語言里面有gotoxy(x,y)函數(shù)來定位光標位置;

但在VC下面沒有conio.h,也就沒有gotoxy(),只在tc,bc中才有

下面是別人構造的一個:

includewindows.h

#includeiostream

using namespace std;

void gotoxy(int x, int y) {

COORD c;

c.X = x - 1;

c.Y = y - 1;

SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);

}

int main()

{

gotoxy(20,12);

std::cout"Hello world!"粗指前endl;

return 0;

}

其中的COORD和SetConsoleCursorPosition定義在wincon.h中~

SetConsoleCursorPosition用于在相應的設備設置光標的位置,兩個參數(shù)分別是設備句柄和光標位置結構。GetStdHandle定義在winbase.h上用于獲得標準輸入、輸出、錯誤輸出句柄

當參數(shù)標識為STD_OUTPUT_HANDLE時獲得標準輸出句巖清柄

善逗侍于使用搜索引擎,搜到的

C語言中如何定位文件txt的光標

1、使用fseek函數(shù)即可更改文件指針穗銀的位置。

函數(shù)名: fseek

功 能: 重定位流上的文件指針

用 法: int fseek(FILE *stream, long offset, int fromwhere);

描 述: 函數(shù)設置文件指針stream的位置。如果執(zhí)行成功,stream將指向以fromwhere為稿搜基準,偏移offset個字節(jié)的位置。如果執(zhí)行失敗(比如offset超過文件自身大小),則不改變stream指向的位置。

返回值: 成功,返回0,否則返回其他值。

2、例子:

fseek(fp,100L,0);//把文件內(nèi)部指針移動到離文件開頭100字節(jié)處猜敬宴;

fseek(fp,100L,1);//把文件內(nèi)部指針移動到離文件當前位置100字節(jié)處;

fseek(fp,-100L,2);//把文件內(nèi)部指針退回到離文件結尾100字節(jié)處。


網(wǎng)頁題目:c語言中操作光標的函數(shù) c語言中光標定位
瀏覽路徑:http://weahome.cn/article/ddpices.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部