请各位老师帮我看看这段代码,如何让他实现对屏幕的精确定位?

hehaidaxue 2004-10-12 04:27:51
/*//设定游标位置,缺点是定位不是很准确.
void movetoxy(int x,int y)
{
regs.h.ah=0x02;//bios中断
regs.h.dh=y;
regs.h.dl=x;
regs.h.bh=0;
int86(0x10,®s,®s);
}*/
上面的这个函数虽然可以在屏幕上定位光标,但不是很精确,比如我想在800*600下把它定位在点(799,599),则它会突破屏幕,现在我想把光标定位在(799,599),则上面的函数改如何修改?劳驾了!
...全文
140 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
自己调用汉字库显示,以前都有贴子了,自己翻一下吧。
hehaidaxue 2004-10-12
  • 打赏
  • 举报
回复
当前的显示模式为800*600,用int 10,自定义函数,在屏幕的任何位置输出汉字,我该怎么操作?请教了。
hcj2002 2004-10-12
  • 打赏
  • 举报
回复
如果用中断的话,应该知道当前的显示模式,文本或图形等等
hehaidaxue 2004-10-12
  • 打赏
  • 举报
回复
是的,我是想在图形界面上显示汉字,所以要精确的定位,所以才会来去定义这个函数,您能给我一段例子吗,
  • 打赏
  • 举报
回复
图形方式下最好不要混用文本方式函数,要输入可想其他办法,
可用getch(),然后显示。
  • 打赏
  • 举报
回复
gotoxy是文本方式下的,不是图形方式下的。图形方式下的是moveto(x,y)
hehaidaxue 2004-10-12
  • 打赏
  • 举报
回复
我开始也是用的gotoxy()但是它在屏幕上的定位还不如我的这个中断函数那么精确,请问还有其它办法吗,因为我的程序不能调用库函数所以必须自己定义。
刚才我试着这么做:
void movetoxy(int x,int y)
{
regs.h.ah=0x02;//bios中断
regs.h.dh=y/256+(y%256)/10;
regs.h.dl=x/256+(x%256)/10;
regs.h.bh=0;
int86(0x10,®s,®s);
}*/
好像有反映,但很难调到,您看看还有其它办法吗
  • 打赏
  • 举报
回复
直接gotoxy(799,599);

70,037

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧