本例效果图:


代码文件:


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls; type
  TForm1 = class(TForm)
    ListView1: TListView;
    Button1: TButton;
    CheckBox1: TCheckBox;
    procedure FormCreate(Sender: TObject);
    procedure ListView1Change(Sender: TObject; Item: TListItem;
      Change: TItemChange);
    procedure CheckBox1Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  end; var
  Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject);
const
  ps: array[.., ..] of string = (
    ('赵', '男', '88'),
    ('钱', '男', '77'),
    ('孙', '女', '66'),
    ('李', '男', '55'),
    ('周', '女', '44'),
    ('吴', '女', '33'),
    ('郑', '男', '22'),
    ('王', '男', '11'));
var
  i: Integer;
  Item: TListItem;
  Column: TListColumn;
begin
    ListView1.Align := alTop;
    ListView1.ViewStyle := vsReport;
    ListView1.GridLines := True;
    ListView1.Checkboxes := True; {显示复选框}     Column := ListView1.Columns.Add;
    Column.Caption := '姓名';
    Column.Width := ListView1.Width div ;     Column := ListView1.Columns.Add;
    Column.Caption := '性别';
    Column.Width := ListView1.Width div ;     Column := ListView1.Columns.Add;
    Column.Caption := '年龄';
    Column.Width := ListView1.Width div ;   for i := Low(ps) to High(ps) do
  begin
    Item := ListView1.Items.Add;
    Item.Caption := ps[i][];
    Item.SubItems.Add(ps[i][]);
    Item.SubItems.Add(ps[i][]);
  end;   CheckBox1.Caption := 'RowSelect';
  Button1.Caption := '显示复选的项';
end; procedure TForm1.ListView1Change(Sender: TObject; Item: TListItem;
  Change: TItemChange);
begin
  if Item.SubItems.Count > then
    Text := Format('%s: %s, %s', [Item.Caption, Item.SubItems[], Item.SubItems[]]);
end; procedure TForm1.Button1Click(Sender: TObject);
var
  Item: TListItem;
  str: string;
begin
  str := '';
  for Item in ListView1.Items do
    if Item.Checked then
      str := str + Item.Caption + sLineBreak;
  ShowMessage(TrimRight(str));
end; procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  ListView1.RowSelect := CheckBox1.Checked;
end; end.

窗体文件:


object Form1: TForm1
  Left =
  Top =
  Caption = 'Form1'
  ClientHeight =
  ClientWidth =
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  Position = poDesktopCenter
  OnCreate = FormCreate
  PixelsPerInch =
  TextHeight =
  object ListView1: TListView
    Left =
    Top =
    Width =
    Height =
    Columns = <>
    TabOrder =
    OnChange = ListView1Change
  end
  object Button1: TButton
    Left =
    Top =
    Width =
    Height =
    Caption = 'Button1'
    TabOrder =
    OnClick = Button1Click
  end
  object CheckBox1: TCheckBox
    Left =
    Top =
    Width =
    Height =
    Caption = 'CheckBox1'
    TabOrder =
    OnClick = CheckBox1Click
  end
end

使用 TListView 控件(4)的更多相关文章

  1. Delphi的TListView控件拖放选定行操作

    http://www.tansoo.cn/?p=401 Delphi的TListView控件拖放选定行操作的例子,效果图如下:TListView控件拖动选定行到指定位置 具体实现步骤: 一.新建一个D ...

  2. c++ builder TListView控件按字符串排序(根据网上代码亲测ok)

    //--------------------------------------------------------------------------- /* 首先将一个列表框控件安放在Form上, ...

  3. 使用 TListView 控件(2)

    本例效果图: 代码文件: unit Unit1; interface uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, ...

  4. TListView控件的ReadOnly属性的一个Bug

    不知道是不是ListView的 ReadOnly属性的一个bug 1.Form上一个ListView,如图设置 2.在FormCreate事件中写如下代码:     ListView1->Rea ...

  5. 教程-Delphi第三方控件安装卸载指南

    1 只有一个DCU文件的组件.DCU文件是编译好的单元文件,这样的组件是作者不想把源码公布.一般来说,作者必须说明此组件适合Delphi的哪种版本,如果版本不对,在安装时就会出现错误.也正是因为没有源 ...

  6. Delphi 7 里没有加载的控件

    在原来版本如D5.D6中使用的控件如Quickrep,FastNet等,在D7中仍然是保留的.只是Delphi没有将他们默认的安装到组件面版中来.这些控件包全部保存在Delphi目录的bin下,文件扩 ...

  7. 教程-Delphi7 自带控件安装对应表

    原来的控件delphi7里何处寻? 经常有朋友提这样的问题,“我原来在delphi5或者delphi6中用的很熟的控件到哪里去了?是不是在delphi7中没有了呢?这是不是意味着我以前写的代码全都不能 ...

  8. Delphi中解析Xml的控件-SimDesign NativeXml

    Delphi中解析Xml的控件-SimDesign NativeXml 正在学习,感觉应用很方便.无源代码的版本还是免费的. SimDesign.NativeXml是一个delphi和bcb的XML控 ...

  9. Delphi在Listview中加入Edit控件

    原帖 : http://www.cnblogs.com/hssbsw/archive/2012/06/03/2533092.html Listview是一个非常有用的控件,我们常常将大量的数据(如数据 ...

随机推荐

  1. OpenCV——图像金字塔和图片尺寸缩放

  2. JavaScript模块化思想之入门篇

    在写正文之前先写一点废话,从我大三下学期正式接触前端到现在,已经六个月了.自己从HTML,CSS,简单的JS验证开始,一点点开始走入前端的世界.越发的感觉前端这一领域散发着无穷的魅力,也许这和我真心喜 ...

  3. P2731 骑马修栅栏 Riding the Fences

    题目描述 John是一个与其他农民一样懒的人.他讨厌骑马,因此从来不两次经过一个栅栏.你必须编一个程序,读入栅栏网络的描述,并计算出一条修栅栏的路径,使每个栅栏都恰好被经过一次.John能从任何一个顶 ...

  4. ceph状态信息靠谱查询

    1)检查集群的状态汇总信息: [root@haha1 clouder]# ceph -s cluster 8e136e25-77ab-4e0b-b24b-232a7b466cfe health HEA ...

  5. ORA-02291: 违反完整约束条件 - 未找到父项关键字

    由于大意,在设置数据库表时将外键字段的类型与外键表的主键字段类型不一致,造成此错误. 我的情况是: 1.将一个为number(10)的外键设置成了number(19) 2.将外键字段对应的主键表设置成 ...

  6. VB6 选择文件夹路径

    '--------------------------------------------------------------------------------------- ' Module : ...

  7. # 20155218 徐志瀚 EXP7 网络欺诈

    20155218 徐志瀚 EXP7 网络欺诈 1. URL攻击 1.在终端中输入命令netstat -tupln |grep 80,查看80端口是否被占用 发现没有被占用: 2.输入指令service ...

  8. 20155301 Exp9 Web安全基础

    20155301 Exp9 Web安全基础 1.实验后回答问题 (1)SQL注入攻击原理,如何防御 答 :原理: 利用现有应用程序,将恶意的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web ...

  9. 软件测试 —— Bug

    [Bug规范] Bug标题中需包含Bug的具体位置并以[]标注 举例:[模块-子模块-页面]XXXXXXXXXXXX Bug标题尽量简明 做什么操作 + 出现什么结果,比如(点击提交按钮,出现卡顿现象 ...

  10. jmeter:正则表达式的使用

    Jmeter中正则关联的使用是可以提取动态变化数据进行传递:关联的方式和提取器有多种,这篇先讲解正则表达式怎么来关联(?) 在需要获取数据的http请求上添加后置处理器 比如提取百度title值: 正 ...