搜档网
当前位置:搜档网 › 想在C#中的listView 控件中显示图片:

想在C#中的listView 控件中显示图片:

想在C#中的listView 控件中显示图片:
想在C#中的listView 控件中显示图片:

在ListView控件中,想在ListView 中的第一列显示图片,比如当功能正常时显示对号,否则显示x号,在网上找了半天,都没找到解决办法。最后在https://www.sodocs.net/doc/a116931093.html, 上找到了答案:://https://www.sodocs.net/doc/a116931093.html,/questions/8276225/images-in-listview-subitem-c-sharp

首先你需要在WinForm 中添加一个imagelist 控件,在imagelist控件的图片集合中添加要显示的图片。我的listView 中View 属性设置为details (其她的没试)。然后将ListView的SmallImageList 属性赋值为添加的imagelist控件名。之后:

?

这样就在行的第一列加了个图片。

以上是在View 为details 时,在第一列显示图片,下载在LargeIcon 下让ListView中的每个项目显示图片

1. 添加ImageList 控件这种相关属性:

主要设置了要显示的图片,及其要显示的大小:

添加如下代码:

lvwIcon.View = https://www.sodocs.net/doc/a116931093.html,rgeIcon;

https://www.sodocs.net/doc/a116931093.html,rgeImageList = imageList1;

for (int i = 0; i < 4; i++)

{

lvwIcon.Items.Add("图片" + (i+1));

lvwIcon.Items[i].ImageIndex = i;

} 显示效果

利用picturebox控件动态显示图像

利用picturebox控件动态显示图像 (程序在最后) using System; using ; using https://www.sodocs.net/doc/a116931093.html,ponentModel; using System.Data; using System.Drawing; using System.Text; using ; namespace PictureBox控件 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } Bitmap MyBitmap; private void button1_Click(object sender, EventArgs e) { ; if ( == "") return; try { Bitmap SrcBitmap = new Bitmap(; MyBitmap = new Bitmap(SrcBitmap, , ; = MyBitmap; } catch (Exception Err) { MessageBox.Show(this, "打开图像文件出错!", "信息提示", MessageBoxButtons.OK, https://www.sodocs.net/doc/a116931093.html,rmation); } } private void button2_Click(object sender, EventArgs e) { int iWidth = ; int iHeight = ; Graphics g = ; g.Clear(Color.Gray); Bitmap bitmap = new Bitmap(iWidth, iHeight);

C_中的ListView控件实例教程

C#中的ListView控件实例教程 ListView可以通过四种不同的方式显示条目。 1.只能给ListV iew控件添加基于ListViewItem类的对象; 2.ListViewItems属性:设置用于显示的属性;3.SubItems()方法:包含详细视图中显示的文本; 4.V iew属性:设置以下 ListView可以通过四种不同的方式显示条目。 1.只能给ListView控件添加基于ListViewItem类的对象; 2.ListV iewItems属性:设置用于显示的属性; 3.SubItems()方法:包含详细视图中显示的文本; 4.View属性:设置以下四种显示方式: Details:详细信息; List:列表; LargeIcon:大图标; SmallIcon:小图标。 5.Details视图需要为Columns属性使用Add()方法添加列。 例一: namespace ListViewExercise { public partial class Form1 : Form { public Form1() { InitializeComponent(); ListViewSet(); CreateViewItemMethodOne(); //CreateViewItemMethodTow(); } ///

/// ListView 设置 ///

private void ListViewSet() { //ListView显示方式 listViewControl.View = V iew.Details; } ///

/// //手动填加ListV iew方法1 /// private void CreateViewItemMethodOne() { listViewControl.BeginUpdate(); #region 增加Item的标题,共有三个列 //1、创建标题 listViewControl.Columns.Add("文件名"); listViewControl.Columns.Add("大小"); listViewControl.Columns.Add("创建日期"); #endregion #region 手动填加ListView方法 //2、增加第一个Item,在V iew.Details模式下,有点像第一列中一个值listViewControl.Items.Add("folder1","文件夹1",0); //3、增加第一个Item的第一个SubItem,在V iew.Details模式下,有点像第一列中一个值 listViewControl.Items["folder1"].SubItems.Add("11"); //增加第一个Item的第二个SubItem,在V iew.Details模式下,有点像第一列中一个值 listViewControl.Items["folder1"].SubItems.Add("20080114"); listViewControl.Items.Add("folder2","文件夹2",0); listViewControl.Items["folder2"].SubItems.Add("21"); listViewControl.Items["folder2"].SubItems.Add("20080115"); listViewControl.Items.Add("文件夹3"); listViewControl.Items.Add("文件夹4"); #endregion listViewControl.EndUpdate(); } /// /// 手动填加ListView方法2 /// private void CreateViewItemMethodTow() { #region 增加Item的标题,共有三个列 //1、创建标题,共三列 listViewControl.Columns.Add("文件名"); listViewControl.Columns.Add("大小"); listViewControl.Columns.Add("创建日期");

VB中ListView控件属性、方法、事件

VB ListView控件属性、方法、事件 常用属性: View设置或返回控件的视图类型 值说明 1-LvwIcon 图标类型 2-LvwSmallIcon 小图标类型 3-LvwList 列表类型 4-LvwReport 报表类型 Arrange 设置后返回控件的图标排列方式(在图标视图下有效) 值说明 1-LvwNone 不排列 2-LvwAutoLeft 自动靠右排列 3-LvwAutoTop 自动靠左排列 Icons、SmallIcons、ColumnHeaderIcons属性 Icons指定图标视图时的图标与ImageList的绑定 SmallIcons、ColumnHeaderIcons指定列表视图时的图标与ImageList 的绑定 PICTURE、PictureAlignment属性 分别指定ListView控件的背景图片和布局方式 ListItems(Index) 属性 ListItems 属性是ListView控件中列表项的集合。Index用于指定列表项集合中的一个对象, 我们可以把这个对象看作对一行的引用 ListItems集合的属性 1. Text 设置或返回显示文本 2. key 关键字 3. index 索引编号 4. icon , smallicon 不同视图时显示单元格的图标 5. checked 给checkboxes 打√ 6. selected 使处于选定状态 7. ListSubitems(index)集合我们可以把这个集合看作对这行中单元格的引用 Text 设置或返回单元格显示的内容 Reporticon 设置单元格的图标 8.Subitems(index) 设置或返回单元格文本== ListSubitems (index).text ColumnHeaders(index) 属性

图片随着图像随着图像的控件的大小而变

题目要求 窗体上设置一个Image图像控件和两个命令按钮,Image图像控件装入自己喜欢的图片,设置Stretch属性为True,使得图片随着图像随着图像的控件的大小而变,如图所示: (我们一定要收复台湾!) 分析&注意事项 为了实现还原效果,首先要做以下3件事: 必须在事件过程外,即程序代码最上方声明窗体级变量: Dim h%,w% `用户输入的变量声明语句 1 在Form1_Load事件中保存图像控件的初始值: w=Image1.Width h=Image1.Height 1 2 在Command2_Click事件中还原为初始值: Image1.Width=w Image1.Height=h 1 2 参考代码 双击主窗体(默认名Form1),打开代码编辑器 (吐槽一句,习惯了集成IDE的自动补全之后再用这个98年的老爷爷级编译器实在是接受不能……) Dim h%, w% Private Sub Command1_Click() Image1.Width = Image1.Width * 0.5 Image1.Height = Image1.Height * 0.5 End Sub Private Sub Command2_Click() Image1.Width = w Image1.Height = h End Sub Private Sub Form_Load() w = Image1.Width h = Image1.Height End Sub ————————————————

窗体上设置一个Image图像控件和两个命令按钮,Image图像控件装入自己喜欢的图片,设置Stretch属性为True,使得图片随着图像随着图像的控件的大小而变,如图所示: 分析&注意事项 为了实现还原效果,首先要做以下3件事: 必须在事件过程外,即程序代码最上方声明窗体级变量: Dim h%,w% `用户输入的变量声明语句 1 在Form1_Load事件中保存图像控件的初始值: w=Image1.Width h=Image1.Height 1 2 在Command2_Click事件中还原为初始值: Image1.Width=w Image1.Height=h 1 2 参考代码 双击主窗体(默认名Form1),打开代码编辑器 (吐槽一句,习惯了集成IDE的自动补全之后再用这个98年的老爷爷级编译器实在是接受不能……) Dim h%, w% Private Sub Command1_Click() Image1.Width = Image1.Width * 0.5 Image1.Height = Image1.Height * 0.5

C#中ListView控件应用实例

C#中 ListView 控件应用实例
ListView 控件 1. 功能 ListView 控件可以显示带图标的项列表,用户可使用该控件创建类似 Windows 资源管理器的用户界面。ListView 控件具有 4 种视图模式: (1)仅文本,这是默认视图,此视图下,只显示列表项的文本; (2)带有小图标的文本,此视图下,小图标随列表项的文本同时显示; (3)带有大图标的文本,此视图下,大图标随列表项的文本同时显示; (4)报表视图,此视图下,列表项显示在多个列中。 图 1 为 List View 控件。
图1
ListView 控件
2.属性 ListView 控件常用属性及说明如表 1 所示。
表1
ListView 控件常用属性及说明
下面对比较重要的属性进行详细介绍。 (1)View 属性。用于获取或设置项在控件中的显示方式。 语法: public View View { get; set; } 属性值:View 值之一。默认为 LargeIcon。 View 的属性值及说明如表 2 所示。

表2
View 的属性值及说明
(2)FullrowSelect 属性。用于指定是只选择某一项,还是选择某一项所在的 整行。 语法: public bool FullRowSelect { get; set; } 属性值:如果单击某项会选择该项及其所有子项,则为 True;如果单击某 项仅选择项本身,则为 False。默认为 False。 说 明 : 除 非 将 ListView 控 件 的 View 属 性 设 置 为 Details , 否 则 FullRowSelect 属性无效。在 ListView 显示带有许多子项的项时,通常使用 FullrowSelect 属性,并且,在由于控件内容的水平滚动而无法看到项文本时, 能够查看选定项是非常重要的。 (3)GridLines 属性。指定在包含控件中项及其子项的行和列之间是否显示网 格线。 语法: public bool GridLines { get; set; } 属性值:如果在项及其子项的周围绘制网格线,则为 True;否则为 False。 默认为 False。 说明:除非将 ListView 控件的 View 属性设置为 Details,否则 GridLines 属性无效。 示例 FullrowSelect 属性 本示例主要介绍 View 属性和 FullrowSelect 属性的使用方法,示例运行结 果如图 2 所示。

图像列表控件(ImageList)的常用属性

2.11、图像列表控件(ImageList)的常用属性 属性说明(Name)图像列表控件的名称 (自定义)打开属性页 BackColor背景颜色。可从弹出的调色板选择。ImageHeight图像列表控件控件的高度 ImageWidth图像列表控件控件的宽度 Index在对象数组中的编号 Left距离容器左边框的距离 MaskColor 获得或设置一个值,决定在图像列表的图形操作中透明的颜色。可从弹出的调色板选择。 Tag存储程序所需的附加数据Top距容器顶部边界的距离 UseMaskColor 获得或设置一个值,决定图像列表控件是否使用MaskColor属性。取值为:True False 2.12、Inet控件的常用属性 属性说明(Name)Inet控件的名称 (自定义)打开属性页 AccessType 获得或设置该控件连接的代理行为。取值为: 0 icUseDefault 1 icDirect 2 icNamedProxy Document获得或设置要在服务器上检索的文档。Index在对象数组中的编号 Left距离容器左边框的距离 Password授权时使用的密码。 Protocol 该URL使用的协议。取值为: 0 icUnknown 1 icDefault 2 icFTP

4 icHTTP 5 icHTTPS Proxy当访问网时要使用的代理服务器。 RemoteHost获得或设置远程计算机。 RemotePort获得或设置远程计算机上要使用internet的端口。RequestTimeout获得或设置等待请求完成的秒数。 Tag存储程序所需的附加数据 Top距容器顶部边界的距离 URL获得或设置该控件使用的URL。 UserName授权时使用的用户名 2.13、列表视图控件(ListView)的常用属性 属性说明(Name)列表视图控件的名称 (自定义)打开属性页 AllowColumnReorder 获得或设置用户是否可以对报表显示的列重排序。取值为:True False Appearance 获得或设置是否用立体效果绘制。取值为: 0 ccFlat(平面) 1 cc3D(立体) Arrange 获得或设置排列列表视图控件中的图标或小图标视图。取值为: 0 lvwNone 1 lvwAutoLeft 2 lvwAutoTop BackColor背景颜色。可从弹出的调色板选择。 BorderStyle 获得或设置边界样式。取值为:0 ccNone(无边界线) 1 ccFixedSingle(固定单线框) CauseValidation 该控件获得焦点时,失去焦点的控件的Validate事件是否发生。取值为:True 发生 False 不发生 Checkboxes 获得或设置一个值,决定在列表的每一项的旁边,是否显示一个复选框。取值为: True 显示

vb,读取excel表格数据并在listview控件中显示

竭诚为您提供优质文档/双击可除 vb,读取excel表格数据并在listview 控件中显示 篇一:Vb用listView读取excel实例 Vb用listView读取excel实例 第一步:用excel创建成绩表,如下图示例 第二步:打开Vb6创建一工程、标准窗口 第三步:引用excel,在菜单栏,工程——引用,如下图 第四步:在工具栏加载控件microsoftwindowscommoncontrols6.0(sp6),如下图第五步:在标准窗口加入listview控件,控件属性设置如下图 在“列首”标签添加字段名,如下图 第五步:编写代码 dimxlappasexcel.application privatesubForm_load() setxlapp=createobject("excel.application") xlapp.Visible=False

xlapp.workbooks.openapp.path查找列中所有的单元格setlitem=listView1.listitems.add() litem.text=xlapp.Range("a"checkifemptydataRow blnnullRow=true Forinti=1to10 iftrim$(objimportsheet.cells(intcounti,inti).Value) ""then blnnullRow=False endif nextinti 若不是空行,则进行读取动作,否则继续向后遍历excel 中的行 ifblnnullRow=Falsethen 获取单元格中的数据,做有效性check,并将合法数据创建为实体存入对象数组中 objimportsheet.cells(intcounti,1).Value …… endif nextintcounti 5、退出excel进程,并关闭excel相关操作对象 objexcelFile.quit

VC中图像控件的用法与总结

使用picture控件动态显示图片方法 一控件适应于图片尺寸 添加一个picture控件,修改ID为IDC-PICTURE,并添加一CBitmap m_bmp成员变量在OnInitDialog()函数中添加如下代码 if(m_bmp.m_hObject!=NULL) m_bmp.DeleteObject(); //以绝对路径加载BMP图片 HBITMAP hbmp=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),"1.bmp",IMAGE_BITMAP, 0,0,LR_CREATEDIBSECTION | LR_LOADFROMFILE); if(hbmp==NULL) return false; //获得加载位图的文件信息 m_bmp.Attach(hbmp); DIBSECTION ds; BITMAPINFOHEADER &bminfo=ds.dsBmih;//获得位图信息图 m_bmp.GetObject(sizeof(ds),&ds); int cx=bminfo.biWidth;//获得位图宽度 int cy=bminfo.biHeight;//获得位图高度 //该段程序根据图象的宽和高,调整控件大小,让它正好显示一张图片 CRect rect; GetDlgItem(IDC_PICTRUE)->GetWindowRect(&rect);//获得控件所在矩形区域 ScreenToClient(&rect); GetDlgItem(IDC_PICTRUE)->MoveWindow(rect.left,rect.top,cx,cy,true);//调整控件大小在OnPaint()函数中添加如下代码 //三种方法获得pictrue控件DC,图象将被绘制在控件上 CPaintDC dc(GetDlgItem(IDC_PICTRUE)); //CPaintDC dc(this); //CDC dc; //dc.m_hDC=::GetDC(NULL); CRect rcclient; GetDlgItem(IDC_PICTRUE)->GetClientRect(&rcclient); CDC memdc; memdc.CreateCompatibleDC(&dc); CBitmap bitmap; bitmap.CreateCompatibleBitmap(&dc,rcclient.Width(),rcclient.Height()); memdc.SelectObject(&bitmap); CWnd::DefWindowProc(WM_PAINT,(WPARAM)memdc.m_hDC,0); CDC maskdc; maskdc.CreateCompatibleDC(&dc); CBitmap maskbitmap; maskbitmap.CreateBitmap(rcclient.Width(),rcclient.Height(),1,1,NULL); maskdc.SelectObject(&maskbitmap);

C#中ListView的用法

C# 中LISTVIEW用法 //增加项或列(字段) ListView1.Clear; ListView1.Columns.Clear; ListView1.Columns.Add; ListView1.Columns.Add; ListView1.Columns.Add; ListView1.Columns.Items[0].Caption:='id'; ListView1.Columns.Items[1].Caption:='type'; ListView1.Columns.Items[2].Caption:='title'; ListView1.Columns.Items[2].Width:=300; Listview1.ViewStyle:=vsreport; Listview1.GridLines:=true; //注:此处代码也可以直接在可视化编辑器中完成, 也可写成以下这样 begin with listview1 do begin Columns.Add; Columns.Add; Columns.Add; ViewStyle:=vsreport; GridLines:=true; columns.items[0].caption:='进程名'; columns.items[1].caption:='进程ID'; columns.items[2].caption:='进程文件路径'; Columns.Items[0].Width:=100; Columns.Items[1].Width:=100; Columns.Items[2].Width:=150; end end; //增加记录 with listview1.items.add do begin caption:='1212'; subitems.add('hh1'); subitems.add('hh2'); end; //删除 listview1.items.delete(0);

利用MFC的Picture控件显示和处理图像

利用 MFC 的 Picture 控件显示和处理图像
在《OpenCV 教程-基础篇》的 2.8 节中,所创建的 MFC 图像显示是直接放在对话框面板的左上 角的,感觉不大美观;《MFC 中快速应用 OpenCV》 则是介绍用 SDI(单文档界面)来显示图 像,《A step-by-step guide to the use of Microsoft Visual C++ and the Intel OpenCV library》 使用 VS2005 来进行图像和视频的读取和处理, 但是其图像和视频的显示界面不是在对话框里面 的,而是新建一个窗口来做。所以下面我们就来看看怎么在对话框里使用 Picture 控件来显示和 处理图像。 [编辑]
创建 MFC
首先创建一个 MFC 对话框应用程序(Dialog-based Application)如下:

在 VS2005 和 2008 里,我们可以用一个 Solution 来组合几个 Project (每个 Project 基本上 只包含一个 Program),当我们要构建一个多 Program 的应用时(例如一个客户端程序加一个 服务器应用程序),利用 Solution 可以将这些 Projects 组合起来、并且共享文件和函数库。 通常需要为 Solution 创建一个主路径,其中包含了所有 Projects 的路径。不过在这篇文章里, 我们只构建一个简单的 Project,所以在创建 MFC 的 New Project 对话框里,不用勾选“Create directory for solution”这个选项。 点击 OK -- Next 进入下一步,在这里我们创建一个 Dialog-based Application,大部分选项按默 认设置就行,不过最下面的“Use Unicode libraries”最好去掉。如果勾选了这个选项,程序代码 就会使用 16bit 的 Unicode 字符集来编码,但是很多函数虽然使用 char* (ASCII stings) 类型字 符,而将字符串从 Unicode 转换到 ASCII 是非常麻烦的。使用 Unicode 在编译时可能会遇到 下列错误:
cannot convert parameter 1 from 'CString' to 'const char *' cannot convert from 'const char [11]' to 'LPCWSTR'

VB6控件LISTVIEW使用指南

功---- VB6无疑是当前最先进的编程工具之一,无论是它的代码编写还是与视窗98的完美结合, 都令人们特别是程序员们赞叹不已。在这里,我将自己在编程实践中对LISTVIEW控件的一些使用经验和心得体会与广大的同仁们作以探讨,希望大家批评指正,或者有所借鉴。 ---- 在VB6专业版或者企业版中,LISTVIEW控件并不是默认的工具箱的配置项目,你必须要手工添加---单击"工程"菜单项目,选择"部件",在部件对话框的"控件"栏目中选择"MICROSOFT WINDOWS COMMON CONTROLS 6.0",确认在它前面的复选框中有一个黑色的对号,单击"确认" 按钮,这时你的工具箱中便添加了几个控件,其中,有五个空心圆圈的便是LISTVIEW控件了, 当然怎么把它添加到窗体上就不用我多说了吧。 ---- 我个人认为,作为一个增强功能的列表框,它的本质是用来显示更多的信息的.因此, 在这篇文章中,我着重介绍它VIEW属性的LVWREPORT(报表)值的使用.至于它的外观怎样设计,诸位当然可以随心所欲了.为了直观一点,我举一个应用实例来说明。 ---- 设计完成后的主界面参见图一,它实际上是一个增强功能的文件浏览器。 ---- 首先新建一个标准EXE工程,主窗体名称为FRMMAIN,添加一个驱动器列表框DRIVE1,一个文件列表框FILE1(设置VISIBLE属性FALES,PATTERN属性(*.EXE;*.DLL)),一个目录列表框DIR1,一个增强列表框LISTVIEW1,一个IMAGE控件IMAGE1和一个IMAGELIST控件IMALIST1,在IMALIST1控件上单击右键,设计IMAGELIST控件,添加一个你最喜欢的图标(最好使用ICON图标),索引为一。在主窗体FRMMAIN的通用声明段输入以下代码: Dim clmX As ColumnHeader;标题栏 Dim itmX As ListItem;列表项目 Dim Counter As Long;计数器 Dim Fname As String;读取文件名 Dim dname As String;增强列表框完整路径名称 Public CurrentDir As String;完整的目录名称 在主窗体的LOAD事件中写入以下代码: Private Sub Form_Load() Me.Caption = App.Title;

C#中ListView的用法详解

C# ListView用法详解 分类:C#2012-08-27 18:44 91268人阅读评论(31) 收藏举报 一、ListView类 1、常用的基本属性: (1)FullRowSelect:设置是否行选择模式。(默认为false) 提示:只有在Details视图该属性才有意义。 (2)GridLines:设置行和列之间是否显示网格线。(默认为false)提示:只有在Details视图该属性才有意义。 (3)AllowColumnReorder:设置是否可拖动列标头来对改变列的顺序。(默认为false)提示:只有在Details视图该属性才有意义。 (4)View:获取或设置项在控件中的显示方式,包括Details、LargeIcon、List、SmallIcon、Tile(默认为LargeIcon) (5)MultiSelect:设置是否可以选择多个项。(默认为false) (6)HeaderStyle:获取或设置列标头样式。 Clickable:列标头的作用类似于按钮,单击时可以执行操作(例如排序)。 NonClickable:列标头不响应鼠标单击。 None:不显示列标头。 (7)LabelEdit:设置用户是否可以编辑控件中项的标签,对于Detail视图,只能编辑行第一列的内容。(默认为false) (8)CheckBoxes:设置控件中各项的旁边是否显示复选框。(默认为false) (9)LargeImageList:大图标集。提示:只在LargeIcon视图使用。

(10)SmallImageList:小图标集。提示:只有在SmallIcon视图使用。 (11)StateImageList:图像蒙板。这些图像蒙板可用作LargeImageList和SmallImageList图像的覆盖图,这些图像可用于指示项的应用程序定义的状态。(暂时不大懂) (12)SelectedItems:获取在控件中选定的项。 (13)CheckedItems:获取控件中当前复选框选中的项。 (14)Soritng:对列表视图的项进行排序。(默认为None) Ascending:项按递增顺序排序。 Descending:项按递减顺序排序。 None:项未排序。 (15)Scrollable:设置当没有足够空间来显示所有项时是否显示滚动条。(默认为true) (16)HoverSelection:设置当鼠标指针悬停于项上时是否自动选择项。(默认为false) (17)HotTracking:设置当鼠标指针经过项文本时,其外观是否变为超链接的形式。(默认为false) (18)HideSelection:设置选定项在控件没焦点时是否仍突出显示。(默认为false) (19)ShowGroups:设置是否以分组方式显示项。(默认为false); (20)Groups:设置分组的对象集合。 (21)TopItem:获取或设置控件中的第一个可见项,可用于定位。(效果类似于EnsureVisible方法) 2、常用方法: (1)BeginUpdate:避免在调用EndUpdate方法之前描述控件。当插入大量数据时,可以有效地避免控件闪烁,并能大大提高速度。

VB中ActiveX控件的使用

第八章VB中ActiveX控件的使用 8.1 概述 这里的ActiveX控件是指VB标准工具箱里没有的控件,用时需从“工程”菜单里选择“部件…”(或右键单击工具箱,从快捷菜单中选择“部件…”),从部件窗口里勾上需要的控件。 1. 设置页框的外观样式 (1)先在窗体上画出一个TabStrip对象; (2)右击该对象,从快捷菜单中选择“属性”; (3)在TabStrip属性窗口里选择通用(General)标签,在样式(Style)列表框里选择样式; (4)在TabStrip属性窗口里选择选项卡(Tabs)标签,在标题(Caption)框里输入标题和关键字; (5)如果需要的话,在工具提示文本(ToolTipText)框里输入提示信息; (6)在TabStrip属性窗口里选择字体(Font)标签,设置标题的字体(可以直接采用默认值)。 2.增减标签总数 在TabStrip属性窗口里选择选项卡标签,单击插入选项卡按钮增加标签,单击删除选项卡按钮删除标签。 3.在TabStrip上显示图形 1) 在窗体里拖入一个图象列表(ImageList)控件; 2) 在此对象上右击,选择属性,打开属性页窗口; 3) 选择图象标签,单击插入图片按钮,在选定图片对话框里选择想使用的位图或图标,然后单击打开按钮;为每个想添加图形的选项卡重复此步; 4) 单击确定按钮,ImageList里就存储了需要的图片。 5) 选择TabStrip,进入TabStrip属性窗口并选择通用标签,在图象列表框里选择ImageList1;

6) 选择选项卡标签,单击紧挨索引框的向左或向右箭头以选择一个Tab序号。在图象框里输入一个数,输入为1,则显示刚才ImageList控件里的第一个图形,输入为2,则显示刚才ImageList控件里的第二个图形,单击确定按钮完成。 4.在TabStrip上放置其它控件 在窗体上象添加普通控件一样,把每一页需要的控件添上,控件不止一个时,应该用Frame来分组,注意:除了默认的第一页上的Frame控件外,其他所有Frame的Visible属性都应该设为假。 5.设计代码 在用户选择了标签后,TabStrip要求编写代码来显示或隐藏控件。可用类似下面的代码来识别用户在哪一个项目上单击。 Private Sub TabStrip1_Click() Select Case TabStrip1.SelectedItem.key Case 1 <选第一项时需要执行的代码> Case 2 <选第一项时需要执行的代码> …… End Select End Sub 例:Private Sub TabStrip1_Click() Select Case TabStrip1.SelectedItem.Key Case "statubar" Frame2.Visible = False Frame1.Visible = True Case "toolbar" Frame1.Visible = False Frame2.Visible = True End Select End Sub 8.2 状态栏(StatusBar)和工具栏(ToolBar) 1.状态栏的作用与组成 StatusBar 控件由Panel(窗格)对象组成,最多能被分成16 个Panel 对象,每一个Panel 对象能包含文本和/或图片。控制个别窗格的外观属性包括Width、Alignment(文本和图片的)和Bevel(斜面)。此外,能使用Style 属性七个值中的一个自动地显示公共数据,诸如日期、时间和键盘状态等。 2.创建状态栏 先在窗体上画出一个StatusBar对象,再右击该对象,从快捷菜单中选择“属性”,进入属性页设置窗口,进行下面的设置: (1)选择窗格形状 在属性窗口里选择通用标签,在样式列表框里选择多窗格(缺省形式)或单窗格简单文本形式。 (2)添加或删除状态栏窗格 在属性窗口里选择窗格标签,单击插入窗格按钮添加一个窗格,或单击删除窗格按钮删除一个窗格。 (3)在单窗格里显示文本 在属性窗口里选择通用标签,在简单文本框里输入想显示在状态栏窗格里的文本。用代码显示的方式是: StatusBar1.SimpleText = "要显示的内容" (4)在多窗格里显示文本或图形 1). 在属性窗口里选择窗格标签,用索引旁的按钮选择窗格序号。 2). 在文本框里输入想显示在状态栏窗格里的文本。用代码显示的方式是:StatusBar1.Panels(x).Text = "要显示的内容"

常用控件:图片控件Picture Control

上一节中鸡啄米讲的是滚动条控件,本节主要讲一种简单实用的控件,图片控件Picture C ontrol。我们可以在界面某个位置放入图片控件,显示图片以美化界面。 图片控件简介 图片控件和前面讲到的静态文本框都是静态文本控件,因此两者的使用方法有很多相同之处,所属类都是CStatic类,有关成员函数已在前面介绍,这里就不重复了。 图片控件静态和动态加载图片 鸡啄米下面为大家演示如何为图片控件静态和动态加载位图图片。 1. 图片控件静态加载图片 1)创建一个基于对话框的MFC工程,名称设置为“Example27”。 2)准备一张Bitmap图片,名称设为“test.bmp”,放到工程的res文件夹中,res文件夹路径为...\Example27\Example27\res。鸡啄米在这里用的是一张鸡啄米网站的截图。 3)在Resource View中的“Example27.rc*”节点上点右键,选择“Add Resource...”,弹出“Add Resource”对话框: 然后在左侧的“Resource Type”中选择“Bitmap”,点按钮“Import”,显示一个文件对话框,我们选择res文件夹中的test.bmp图片文件,导入成功后会在Resource View的Exa mple27.rc*节点下出现一个新的子节点“Bitmap”,而在“Bitmap”节点下可以看到刚添加的位图资源IDB_BITMAP1,这里的默认ID就不修改了。

4.)在自动生成的对话框模板IDD_EXAMPLE27_DIALOG中,删除“TODO: Place di alog controls here.”静态文本控件、“OK”按钮和“Cancel”按钮。添加一个Picture Control 控件,在图片控件的属性页中有一个Type属性,Type属性下拉列表中有8种类型,下面分别介绍下: Frame:显示一个无填充的矩形框,边框颜色可以通过Color属性的下拉列表设定 Etched Horz:显示一条横分割线 Etched Vert:显示一条竖分割线 Rectangle:显示一个填充的矩形框,矩形颜色可通过Color属性的下拉列表设定 Icon:显示一个图标(Icon),图标通过Image 下拉列表来设置图标资源ID Bitmap:显示一个位图(Bitmap),位图通过Image 下拉列表来设置位图资源ID Enhanced Metafile:显示一个加强的元数据文件(Metafile) Owner Draw:自绘 因为我们要加载的是位图图片,所以Type属性选择Bitmap。 5)在图片控件的Image属性的下拉列表中选择3)中导入的位图IDB_BITMAP1。 6)编译运行程序,弹出结果对话框,如下图所示:

VB ListView的使用

VB ListView的使用 ListView控件比前面几种控件要复杂一些,通过此控件,可将项目组成带有或不带有列标头的列,并显示伴随的图标和文本。ListView控件是由ColumnHeader和ListItem对象所组成的,其中ColumnHeader对象的个数决定了控件的列数,而ListItem对象的个数则决定了控件的行数。(图7) ColumnHeader对象是ListView控件中包含标头文字的项目。利用ColumnHeader对象,用户可以: ▲单击对象触发ColumnClick事件并根据数据项目将项目排序。 ▲拖动对象的右边框来调整列宽度。 ▲在报表视图中隐藏ColumnHeader对象。 ColumnHeader对象的数目决定每个ListItem对象可包含的子项目数目。删除ColumnHeader对象后所有与列关联的子项目也将被删除,并且每个ListItem对象的子项目数组将平移以更新ColumnHeader的索引,而这将导致剩余的列标头SubItemIndex属性的改变。 ColumnHeader对象的SubItemIndex属性 该属性返回与ListView控件中ColumnHeader对象关联的子项目的索引。子项目是字符串数组,代表显示在报表视图中的ListItem对象的数据。第一列的列标头SubItemIndex 属性设置为0,这是因为小图标和ListItem对象的文字总出现在第一列中,而且它们被当作ListItem对象而不是子项目。列标头数目取决于子项目数目。列标头数目总是比子项目数目多1。 在设计时可以利用属性页的“列首”选项卡将ColumnHeader对象添加到ListView控件中,在运行时则用Add方法添加。 ColumnHeader对象的Add方法 该方法的使用与前面那些控件基本相似,就不再介绍了。

MFC中picture控件显示图片

PictureBox控件的主要作用是为用户显示图片。实际显示图片由Picture属性决定。Picture属性包括被显示的图片的文件名(及可选的路径名)。注意窗体对象也具有Picture属性,通过设置该属性可直接在窗体背景上显示图片。 要在运行时显示或替换图片,可利用函数LoadPicture来设置Picture属性。提供图片文件名和可选路径名,由LoadPicture函数处理加载和显示图片的细节。 picMain.Picture = LoadPicture("VANGOGH.BMP") PictureBox控件具有AutoSize属性,当该属性设置为True时,PictureBox能自动调整大小与显示的图片匹配。如果要用AutoSize属性设置为True的PictureBox,设计窗体时就需要特别小心。图片将不考虑窗体上的其它控件而调整大小,这可能导致意想不到的后果,如覆盖其它控件。设计时应通过加载每一幅图片来检查是否有这种现象发生。 vc picture控件的分类进行拉总结, (一) 非动态显示图片(即图片先通过资源管理器载入,有一个固定ID) (二) 动态载入图片(即只需要在程序中指定图片的路径即可载入) 为方便说明,我们已经建好一个基于对话框的工程,名为Ttest. 对话框类为CTestDlg (一) vc picture控件非动态载入图片. 方法1.先从最简单的开始,用picture 控件来实现. 步骤: 先在资源里Import一张图片,ID为IDB_BITMAP2,然后在对话框上添加一个picture控件,右键点击打开属性,将type下拉框选择BITMAP,紧跟着Image下面就出现一个下拉框,拉开就会看到所有已经载入好的图片,选择你要的图片.运行程序即可看到. 方法2vc picture控件.通过背景图 同样如上,先载入一张图片,ID为IDB_BITMAP2 TestDlg.h中 CBrush m_brBk;//在public中定义 TestDlg.cpp中 在初始化函数OnInitDialog()中加入: BOOL CTestDlg::OnInitDialog() { CDialog::OnInitDialog(); CBitmap bmp; bmp.LoadBitmap(IDB_BITMAP2); m_brBk.CreatePatternBrush(&bmp); bmp.DeleteObject(); return TRUE; // return TRUE unless you set the focus to a control } 在打开类向导,找到WM_CTLCOLOR消息,重载得对应函数OnCtlColor(),添加如下: HBRUSH CTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if (pWnd == this) { return m_brBk; } return hbr; }

相关主题