先看代码:
作用:测试哪个Item被Check了。
说明:先创建一个窗体,添加1个名称为lv_action的ListView控件,一个CommandButton控件。然后在CommandButton的Clicked事件里添加如下代码(附图1, 2)。具体说明在代码里。
//------------------------------------------------------------------------------------------------
ListViewItem lvItem; //Item对象,保存ListView的Item类型的对象。
integer i; //循环变量。
integer n; //Item的数量。
string str; //结果。
n = lv_action.TotalItems(); //获取ListView的Item数量。
if (n > 0) then //如果有Item。
for i = 1 to n //循环。
iRet = lv_action.GetItem(i, lvItem); //获取ListView的Item对象,里面包含了Check相关属性。
if (iRet = 1) then //如果成功。
str += String(lvItem.StatePictureIndex); //获取Check的图片Index值,1表示没有选中(UnChecked)。>1表示对应StatePicture的Index值。此属性(StatePictureIndex)也即是否被Check了。
str += "|"; //添加分隔,使结果容易查看。
end if
next
end if
MessageBox("", str); //显示结果(哪个Item被Check了,>1的都是被Check了的)。
//------------------------------------------------------------------------------------------------
意义:可以使用ListBox进行图形化的多选或单选(需进行控制)。这样用户界面比较直观。
缺点:对于控制可能会比较困难。但是对于Item较少的应用还是不错的选择。
附图:
(1) ListBox(注意ListView的Check,是否被选中。顺序:由上向下由左向右):
(2) 使用MessageBox显示的对应结果:
因为自己对E文不是太懂,所以对于PowerBuilder的帮助文件理解的可能不
是太透彻。此篇文章也是自己在使用PowerBuilder 8.0过程中对遇到的问题的
总结。