如上述,本程序分为了接口层和算法层。上述全局变量和常量,基本都属于接口层的内容。下面,来看接口层的具体实现。其工作的第一步,是要捕获扫雷窗口并取得其信息。这由函数GetMineWindow来完成:
=================================================================
//试图取得可用的扫雷窗口,返回值表示是否成功。若成功,则全局变量
//MineWnd、MineDC、AreaHeight、AreaWidth都得到相应的填充。若失败,则以上变量的值无意义。
function GetMineWindow: Boolean;
var
clientRect: TRect;
begin
result := false;
MineWnd := FindWindow(nil, MINE_WINDOW_TITLE); //检查是否存在“扫雷”窗口,并且必须为当前窗口
if (MineWnd = 0) or (GetForegroundWindow MineWnd) th...[ 查看全文 ]