网站建设| 数据库类| 图形图象| 程序设计| 现代办公| 操作系统| 考试认证| 网络技术| 软件工程| 电脑相关| 文学作品
网站开发| 网页制作| 操作系统| 图象图形| 考试认证| 数据库类| 程序设计| 硬件技术| 现代办公| 网络技术| 笑话频道
 
您的位置: 电脑书库首页-> 电脑文摘-> 程序设计-> 其它-> 妙用标识符

妙用标识符
作者:佚名 来源:InterNet 加入时间:2004-11-22
相关文章 相关书籍:

1、 Taborder Tabstop:

 这组表识号本来是用来表示组件的按键顺序以及在该组件上是否停留的标识号。但是如果在某些时候稍微重视一下的话,将会事半功倍。下面略举一例:桌面上有几个编辑框,用户希望按回车键、上下方向键而不是TAB在其间来回游动。

> 属性及相关值:
MainFrame: KeyPreview = True
Edit_Name :TabOrder = 0;
Edit_Age :TabOrder = 1;
Edit_Adress :TabOrder = 2;

> 代码及说明:
在interface 的private定义一个过程
procedure TForm1.Tab(Sender: TObject; var Key: Word;
  Shift: TShiftState);
Begin
  (**) 
  if (key=VK_Down) or (key=13) then
   SelectNext(ActiveControl,True,True);
  if key=VK_Up then
   SelectNext(ActiveControl,False,True);
  Key:=0;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Edit_Name. OnKeyDown  = Tab;
Edit_Age .OnKeyDown = Tab;
Edit_Adress . OnKeyDown = Tab;
end;
---- 当然,我们可以利用Delphi的灵活性更加方便的达到这个目的:移动到对象查看器,在Edit_Name的OnKeyDown中输入Tab后回车,Delphi自动创建该事件,然后将Edit_Age及Edit_Adress 的OnKeyDown事件连接到Tab即可(方法很简单:分别到各组件的OnKeyDown事件处下拉并选择Tab即可)。

---- 2、 Tag:

---- 该属性也有很多比较精妙的用处,特别是在提炼代码的时候。

---- 下面略举一例(概括性的):

case (Sender as TEdit).Tag of
  10..100:begin
   //处理过程
  end;//end 10_100
  //其他情况
 end;//end case
---- 这样避免了分别为每个组件写代码的劳动,增强了程序的可读性,也减少了程序的体积。

---- 3、 Handle:

---- 这就是所谓的句柄,在Windows中,句柄是系统内部数据结构的引用。例如,我们正在使用某个窗体时,系统会知道正在使用的窗体的号码,也因此能接受我们的(应用程序)请求,对该窗体进行各种操作。当然,它不仅仅指的是我们平时常见的窗体句柄,还包括菜单、位图、图表、鼠标、菜单等。常规的用法不是我们这里要讨论的,比如:

procedure TForm1.ChangeTitleClick(Sender: TObject);
begin
 SetWindowText(handle,'Liangming''s here');
end;
---- 下面举一个利用Handle传递位图的例子:

procedure TForm1.LoadBmpClick(Sender: TObject);
var
bmp:TBitmap;
begin
    bmp:=TBitmap.Create;
  try
    bmp.LoadFromFile('c:\windows\setup.bmp');
    with image1 do begin
      Picture.Bitmap.Handle:=bmp.Handle;
      Update;
      Refresh;
    end;
  finally
   bmp.Free;
  end;
end;


[文章录入员:fightter]

相关文章 相关书籍:
本站推荐内容

近期主机类热搜关键词:
美国服务器 美国服务器租用 海外服务器租用 国外服务器租用

其它
C/C++/VC
C++Builder
Basic/VB类
Delphi/Pascal
Java编程
FORTRAN
其它
电脑教程阅读排行
·妙用标识符
·DBGrid中Shift多选
·一个EMail检查程序