Listview_简单使用_(Virtual)
1、代码来自于“C:\Program Files (x86)\Borland\Delphi7\Demos\Virtual Listview”
1.1、是使用 ListView来显示数据
1.2、自己管理 ListView里面显示的信息(也就是说,不是像StringGrid那样一格一格内容往里面插入)
2、ListView 控件,属性设置:
2.1、ViewStyle 设置为 vsReport
2.2、OwnerData 设置为 true
2.3、双击 ListView,添加 几个列
2.4、GridLines 设置为 true
2.5、RowSelect 设置为 true
2.6、ReadOnly 设置为 true
3、测试程序界面:
4、测试代码:(Delphi7)
- unit Unit1;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, ComCtrls, StdCtrls;
- type
- TForm1 = class(TForm)
- ListView1: TListView;
- btnListViewTest01: TButton;
- btnListViewTest02: TButton;
- procedure btnListViewTest01Click(Sender: TObject);
- procedure ListView1Data(Sender: TObject; Item: TListItem);
- procedure btnListViewTest02Click(Sender: TObject);
- private
- Flist :TList;
- public
- { Public declarations }
- end;
- Pmsg =^Rmsg;
- Rmsg = record
- Fi1 :integer;
- Fi2 :integer;
- Fi3 :integer;
- end;
- var
- Form1: TForm1;
- implementation
- {$R *.dfm}
- procedure TForm1.ListView1Data(Sender: TObject; Item: TListItem);
- var p :Pmsg;
- begin
- if ListView1.ViewStyle <> vsReport then Exit;
- if (Item.Index >= Flist.Count) then Exit;
- p := Flist.Items[Item.Index];
- Item.Caption := IntToStr(p.Fi1);
- Item.SubItems.Add(IntToStr(p.Fi2));
- Item.SubItems.Add(IntToStr(p.Fi3));
- end;
- procedure TForm1.btnListViewTest01Click(Sender: TObject);
- var i :Integer;
- p :Pmsg;
- begin
- if not Assigned(Flist) then
- Flist := TList.Create;
- if (Flist.Count <> ) then
- begin
- for i:= to (Flist.Count-) do
- FreeMem(Flist.Items[i], SizeOf(Rmsg));
- Flist.Clear;
- end;
- for i:= to do
- begin
- GetMem(p, SizeOf(Rmsg));
- p.Fi1 := i;
- p.Fi2 := + i;
- p.Fi3 := + i;
- Flist.Add(p);
- end;
- ListView1.Items.Count := Flist.Count;
- ListView1.Repaint;
- end;
- procedure TForm1.btnListViewTest02Click(Sender: TObject);
- var i :Integer;
- p :Pmsg;
- begin
- if not Assigned(Flist) then
- Flist := TList.Create;
- if (Flist.Count <> ) then
- begin
- for i:= to (Flist.Count-) do
- FreeMem(Flist.Items[i], SizeOf(Rmsg));
- Flist.Clear;
- end;
- for i:= to do
- begin
- GetMem(p, SizeOf(Rmsg));
- p.Fi1 := + i;
- p.Fi2 := + i;
- p.Fi3 := + i;
- Flist.Add(p);
- end;
- ListView1.Items.Count := Flist.Count;
- ListView1.Repaint;
- end;
- end.
5、运行情况:
5.1、
5.2、
6、
7、
8、
Listview_简单使用_(Virtual)的更多相关文章
- pytho简单爬虫_模拟登陆西电流量查询_实现一键查询自己的校园网流量
闲来无事,由于校园内网络是限流量的,查询流量很是频繁,于是萌生了写一个本地脚本进行一键查询自己的剩余流量. 整个部分可以分为三个过程进行: 对登陆时http协议进行分析 利用python进行相关的模拟 ...
- Java使用poi对Execl简单操作_总结
poi是Apache组织给开发者提供一套操作office(Execl,Word,PowerPoint)等Java API,开发者通过Poi API可以快速的操作office办公软件,以上3篇博文只是一 ...
- centos 6.5 下 nginx 简单优化_虚拟主机_负载均衡
# 用了nginx for win很久,安装也是超级简单.# 还是用一下linux版的吧.环境是centos 6.5 x64 # 安装开始: # 先安装依赖 yum install gcc-c++ y ...
- 3_Jsp标签_简单标签_防盗链和转义标签的实现
一概念 1防盗链 在HTTP协议中,有一个表头字段叫referer,采用URL的格式来表示从哪儿链接到当前的网页或文件,通过referer,网站可以检测目标网页访问的来源网页.有了referer跟踪来 ...
- QT_4_QpushButton的简单使用_对象树
QpushButton的简单使用 1.1 按钮的创建 QPushButton *btn = new QPushButton; 1.2 btn -> setParent(this);设置父窗口 1 ...
- SignalR简单实用_转自:https://www.cnblogs.com/humble/p/3851205.html
一.指定通信方式 建立一个通讯方式需要一定的时间和客户机/服务器资源.如果客户机的功能是已知的,那么通信方式在客户端连接开始的时候就可以指定.下面的代码片段演示了使用AJAX长轮询方式来启动一个连接, ...
- iOS_10_tableView的简单使用_红楼十二钗
终于效果图: 方式1,用字典数组 BeyondViewController.h // // BeyondViewController.h // 10_tableView // // Created b ...
- JSON的简单使用_向前台发送JSON数据
转自:http://www.cnblogs.com/digdeep/p/5574366.html 1.前台页面 <%@ page language="java" conten ...
- JSON的简单使用_解析前台传来的JSON数据
package cn.rocker.json; import org.junit.Test; import net.sf.json.JSONArray; import net.sf.json.JSON ...
随机推荐
- MySQL 1067
今天在云服务器上装mysql的时候,启动突然报了一个“1067 进程意外终止”的错误,这个错误之前是遇到过的,之前因为my.ini配置basedir路径的时候没有正确配置导致了这个错误,但是今天又出现 ...
- Group By 与 Count
select UserID,COUNT(0) From [Order] a Group By UserID UserID (无列名)1 5 2 ...
- Java 集合框架之泛型
JDK 1.5 以后出现的安全机制,提高了编译时期的安全性. 泛型出现的好处: 将运行时期的问题 ClassCastException 转到了编译时期 避免了强制转换的麻烦 泛型出现的原因: publ ...
- eclipse/IDEA使用maven
下载,解压(无须安装),配置环境变量,命令行下mvn -v测试.https://www.cnblogs.com/luotaoyeah/p/3764533.html eclipse使用maven 为ec ...
- facebook 相似性搜索库 faiss
faiss 个人理解: https://github.com/facebookresearch/faiss 上把代码clone下来,make编译 我们将CNN中经过若干个卷积/激励/池化层后得到的激活 ...
- Linux学习笔记(3)linux服务管理与启停
一.LINUX 系统服务管理 1.RHEL/OEL 6.X及之前 service命令用于对系统服务进行管理,比如启动(start).停止(stop).重启(restart).查看状态(status)等 ...
- 安装SQL2012
1. 优先安装软件 1. net framework3.5. 2. 在安装SQL SERVER 2012前需要3.5的支持.在WIN 2012系统可以在系统管理的添加角色和功能中安装,如下将[.NET ...
- Excel数据常用操作,vlookup,text,trim,数据格式导致出错
数据有缺漏,需要在数据前面补零 =TEXT(F70,"000000") 前面是要操作的数据,后面是补几位 匹配数据(将一个表格中的数据进行匹配) =VLOOKUP(C2,aaa,4 ...
- SqlServer分页总结-摘抄
sqlserver2008不支持关键字limit ,所以它的分页sql查询语句将不能用mysql的方式进行,幸好sqlserver2008提供了top,rownumber等关键字,这样就能通过这几个关 ...
- linux 查看tomcat 日志
tomcat 重启: cd /opt/appserver/apache-tomcat-/bin ./shutdown.sh -ef|grep tomcat kill - ./startup.sh 查看 ...