我正在学习汇编语言课程,我需要用(GUI?)制作一个计算器,当然还要使用鼠标选择数字等等......
我快完成了,但我卡住了,我怎样才能得到鼠标的位置?我知道我必须使用 AX=3 和 INT33 并且坐标值将存储在 CX 和 DX 中。现在,数字的布局是 3x3,我如何检查该特定位置是否等于 4?
我正在学习汇编语言课程,我需要用(GUI?)制作一个计算器,当然还要使用鼠标选择数字等等......
我快完成了,但我卡住了,我怎样才能得到鼠标的位置?我知道我必须使用 AX=3 和 INT33 并且坐标值将存储在 CX 和 DX 中。现在,数字的布局是 3x3,我如何检查该特定位置是否等于 4?
如果您使用的是没有 ms-dos 的模拟器,这可能是一个非常大的问题。但是,既然您说您正在学习课程,那么模拟器可能具有 ms-dos。
Int 33h 是以寄存器 ax 作为输入的鼠标处理事件。输出结果可能因您使用的图形模式(40x85、320x200、Ext)而异。以下是您需要了解的一些基础知识。
在此语法中,您要求获取光标位置 [No. 4]。您首先需要将 ax 设为 0003h。返回值为CX(水平位置(x))、DX(垂直位置(y))和BX(按钮状态)。可以在此处找到此信息。