近日想做一个打开网页游戏的程序,要对webbrowser打开的网页进行精细化控制,主要是循环打开指定的网页,然后做出相应的操作,完成后再打开下一个网页,所以有了这个步进方式控制的想法,做了一个小例子,记录一下。
这个小程序实现的是:
点击开始后,逐步显示1~100的数字,但只有在点击步进按钮后,才会一步一步向下走,如图所示。
源码如下:
1.代码文件
- unit Unit1;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls;
- type
- TForm1 = class(TForm)
- edt1: TEdit;
- btn1: TButton;
- btn2: TButton;
- btn3: TButton;
- procedure FormCreate(Sender: TObject);
- procedure btn1Click(Sender: TObject);
- procedure btn2Click(Sender: TObject);
- procedure btn3Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form1: TForm1;
- bujin:boolean; //步进控制
- tingzhi:boolean; //停止,没有它,程序关闭时会没有响应
- implementation
- {$R *.dfm}
- procedure TForm1.FormCreate(Sender: TObject);
- begin
- tingzhi:=False;//初始化为不停止
- end;
- procedure TForm1.btn1Click(Sender: TObject);
- var
- i : Integer;
- begin
- i:=0;
- while (i <= 100) and not (tingzhi) do //循环显示一个1~100的数字
- begin
- Application.ProcessMessages;
- Sleep(100); //动画效果
- i:=i + 1;
- edt1.Text :=IntToStr(i);
- bujin:=True;
- while ((bujin) and not (tingzhi)) do Application.ProcessMessages; //步进响应
- end;
- end;
- procedure TForm1.btn2Click(Sender: TObject);
- begin
- bujin:=False;
- end;
- procedure TForm1.btn3Click(Sender: TObject);
- begin
- tingzhi:=True;
- end;
- end.
2.窗体文件
- object Form1: TForm1
- Left = 562
- Top = 319
- Width = 176
- Height = 120
- Caption = 'Form1'
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'MS Sans Serif'
- Font.Style = []
- OldCreateOrder = False
- OnCreate = FormCreate
- PixelsPerInch = 96
- TextHeight = 13
- object edt1: TEdit
- Left = 56
- Top = 8
- Width = 49
- Height = 21
- TabOrder = 0
- Text = '0'
- end
- object btn1: TButton
- Left = 8
- Top = 43
- Width = 41
- Height = 23
- Caption = #24320#22987
- TabOrder = 1
- OnClick = btn1Click
- end
- object btn2: TButton
- Left = 64
- Top = 43
- Width = 41
- Height = 23
- Caption = #27493#36827
- TabOrder = 2
- OnClick = btn2Click
- end
- object btn3: TButton
- Left = 120
- Top = 43
- Width = 41
- Height = 23
- Caption = #20572#27490
- TabOrder = 3
- OnClick = btn3Click
- end
- end
附:如果测试本博客提供的测试代码?
如果有 "代码文件" 和 "窗体文件", 四步走:
1、新建工程(一般是 VCL Forms Application);
2、进入代码页(一般是 Unit1), 全选, 把 "代码文件" 贴入;
3、在窗体设计状态下(Design), 通过右键菜单或 Alt+F12 进入 "窗体代码" 页, 全选, 把 "窗体文件" 贴入;
4、运行!
如果只有 "代码文件", 五步走:
1、新建工程(一般是 VCL Forms Application);
2、从源码中看看用到了哪些控件, 要添加(一般都使用了默认名称);
3、看看用到了哪些事件, 从 Object Inspector 窗口的 Events 页逐个添加;
4、进入代码页(一般是 Unit1), 全选, 把 "代码文件" 贴入;
5、运行!
如果 "代码文件" 开始是 "program ..." 而不是 "unit ...", 要建立 "Console Application" 测试.
阅读(2341) | 评论(0) | 转发(0) |