Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)aaa
published in(发表于) 2014/7/19 0:12:28
delphi类中方法的使用技巧和实例

Delphi类qq的程序界面实例

Delphi类qq的程序界面实例

实例说明

    一般程序都是以菜单栏和工具栏的形式调用其他功能模块的,如果以动态的类qq的程序界面来调用其他模块将会给用户一种新鲜的感觉,使用户对软件更感兴趣。效果如图1.15所示。



技术要点

    本实例主要使用TPanel组件来完成布局,使用TListView组件来显示带图标的功能菜单。TListView组件的常用属性及说明如下:

Items: 使用该属性可直接访问表示列表中项目的TListItem对象。

Selected:使用该属性可访问列表中第1个所选项的属性。SelCount属性为0时,该属性为空;大于1时,后来选择的项通过GetNextItem方法查找项目的Selected属性定位。

实现过程

1.新建一个工程,该工程会自动创建一个主窗体,默认命名为Form1.

2.在窗体上添加TPanel、TlistView和TImageList组件。设置TListView组件的ImageList属性为TImageList组件。

3.程序代码如下:

procedure TForm1.Panel2Click(Sender: TObject);

var

  newitem:Tlistitem;

begin

  panel_click(sender);

  newitem:=Tlistitem.Create(nil);

  Listview1.Clear;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′one′;

  newitem.ImageIndex:=2;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′two′;

  newitem.ImageIndex:=3;

end;

procedure TForm1.panel_click(Sender: TObject);

var

  i:integer;

begin

  for i:=0 to self.ComponentCount-1 do

  begin

    if (self.Components[i] is TPanel) then

    begin

      if (Tpanel(self.Components[i]).Tag>0) and (Tpanel(self.Components[i]).Tag<5) then

      begin

        if Tpanel(self.Components[i]).Tag=Tpanel(sender).Tag then

          Tpanel(self.Components[i]).Align:=alTop

        else

          Tpanel(self.Components[i]).Align:=alBottom;

      end;

    end;

  end;

end;

procedure TForm1.Panel3Click(Sender: TObject);

var

  newitem:Tlistitem;

begin

  panel_click(sender);

  newitem:=Tlistitem.Create(nil);

  Listview1.Clear;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′three′;

  newitem.ImageIndex:=4;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′four′;

  newitem.ImageIndex:=5;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′AA′;

  newitem.ImageIndex:=9;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′BB′;

  newitem.ImageIndex:=10;

end;

procedure TForm1.Panel4Click(Sender: TObject);

var

  newitem:Tlistitem;

begin

  panel_click(sender);

  newitem:=Tlistitem.Create(nil);

  Listview1.Clear;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′sever′;

  newitem.ImageIndex:=6;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′six′;

  newitem.ImageIndex:=7;

end;

procedure TForm1.Panel5Click(Sender: TObject);

var

  newitem:Tlistitem;

begin

  panel_click(sender);

  newitem:=Tlistitem.Create(nil);

  Listview1.Clear;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′eleven′;

  newitem.ImageIndex:=8;

  newitem:= Listview1.Items.Add;

  newitem.Caption:=′twice′;

  newitem.ImageIndex:=9;

end;

procedure TForm1.ListView1MouseDown(Sender: TObject; Button: TMouseButton;

  Shift: TShiftState; X, Y: Integer);

var

  point:Tpoint;

begin

 if (button=mbRight) and (Listview1.Selected<>nil ) then

 begin

   GetCursorPos(point);

   PopupMenu1.Popup(point.X,point.Y);

 end;

end;

end.





If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759