问一个很简单功能的实现思路,该如何处理
发布时间:2011-06-29 20:31:40 文章来源:www.iduyao.cn 采编人员:星星草
问一个很简单功能的实现思路
一个很简单的功能:
______ ______
|男 | 文字信息1 |女 | 文字信息1
|图片 文字信息2 |图片 文字信息2
| | 文字信息3 | | 文字信息3
------ 工作人员1 ------ 工作人员2 …………
将工作人员以图片加文字的方式横向展开列出,这样的效果如何实现。图片只有2张区分男、女。从本地读取
我本来打算用一个datawindow实现,那样的话得分组样式显示,这个图片应该怎么显示呢。另外希望能达到选中某个人的时候周围有边框高亮显示,这样用一个datawindow就显示完全的话我觉得挺困难。
如果上述方法不可行的话,是不是只能自定义对象了?大家说说思路和好的方法
------解决方案--------------------
思路:
1、 做一个 n-up 的datawindow, 设置分组为4个
2、 datawindow的scoure 为 external
3、 数据源的字段设置为:bk,bed,name,sex,cno,cid,pic 数据类型 CHAR(20)
4、 在画板中把标题栏的bk_t.......等等都删除掉,
5、 把detail 中的bk_1,bed_1,sex_1,cno_1,cid_1,pic_1 [.........] 依次按格式排列好
6、 把pic_(1-4)大小设置好,把display as picture 勾选上
7、 把bk字段拉成大方框做背景[说明一点,如果是PB11以下,好象不支持颜色渐变,要做个同等大小的图片,同时要把bk_n设置为display as picture, 如果是PB11.5直接设置背景色渐变即可],同时把BK字段的方框都设置为其他字段的最下面,及send to back
8、 保存做好的DATAWINDOW
9、 在窗口中的datawindow控件的constructor 下写代码加数据(根据你自己的数据对应相应的字段)
演示代码:
long i ,li_row
for i=1 to 7
insertrow(0)
this.object.name[i]='姓名:'+'姓名'+string(i,'00') //加姓名
if mod(i,2)=0 then //测试男女需要,奇数是女,偶数是男
this.object.sex[i]='性别:男'
else
this.object.sex[i]='性别:女'
end if
this.object.bk[i]='' //背景方框为空字符
this.object.bed[i]='床号:普外'+string(i,'00')//加病床号
this.object.cno[i]='病历号:'+string(i,'000') //加病历
this.object.ino[i]='住院号:'+string(i,'000') //加住院号
accepttext() //接受字符
if this.object.sex[i]='性别:男' then //做性别判断,
this.object.pic[i]='image\boy.jpg' //是男人就用男图片
else
this.object.pic[i]='image\girl.jpg' //是女人就用女图片
end if
next
10、 自定义一个mousemove 事件ID为:pbm_dwnmousemove [这个事件来显示高亮效果]
并在其写代码:
long i
for i=1 to rowcount()
Modify("bk_"+string(i)+".border='0~tIf(getrow()="+string(row)+",1,0)'") //鼠标移动到该记录的时候 ,方框显示阴影[)+",1,0)可选1-7]
Modify("bed_"+string(i)+".color='0~tIf(getrow()="+string(row)+",65535,0)'")
Modify("name_"+string(i)+".color='0~tIf(getrow()="+string(row)+",65535,0)'")
Modify("sex_"+string(i)+".color='0~tIf(getrow()="+string(row)+",65535,0)'")
Modify("ino_"+string(i)+".color='0~tIf(getrow()="+string(row)+",65535,0)'")
Modify("cno_"+string(i)+".color='0~tIf(getrow()="+string(row)+",65535,0)'")
//编辑鼠标放上去的各个字段颜色为黄色。
next
11、 run 一下,看看效果。大功告成!!!!
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
pb里关于数据窗口继承的问题
我的pb里设了一个母数据窗口,规定了样式,颜色,怎么让其他数据窗口都继承这个母dw,不用重复设颜色,样式呢
...
-
如何制作PB中查找的窗口,可以变透明的,而且还始终在最上面的窗口?
如何制作PB中查找的窗口,可以变透明的,而且还始终在最上面的窗口?
-...
-
powerbuilder 控件句柄转换,求教!!
问题:
比如我通过handle取得了一个button的句柄。
那么我能否根据这个句柄的值,又反操作还原这...
-
TAB控件能不能设置成不是3D的?
就类似于多行编辑控件的Border设置为false,变成平面的效果。找不到在哪里设置
------解决方案-----...
-
???新增按钮的问题
设置一个window窗口有个“新增”按钮,如何做出点击新增按钮,编号(varchar2类型)自动+1,点一下变成2,然后录完信息,再打开...
-
如何用回车键enter获得焦点
一个数据录入窗口,如何输完一个数据,按回车键跳到下一个要输入数据的地方 就和tab一样
------解决方案...
-
ole控件 Microsoft Web Browser
我用Microsoft Web Browser这个控件写了一个浏览器 但是不能运行脚本 对于那些需要在本地运行...
-
PB如何做透明的文本
我现在工作空间,应用程序,窗口都创建好了。也加了文本“用户名”,从网上看了要创建可视用户对象,粘贴了代码。但...
-
mdi窗口的sheet从normal变为max时闪烁
我的mdi的sheet默认打开后最大化,在sheet的resize事件中构造着把所有控件按比例伸缩,但每次...
-
如何使getfileopenname函数打开的窗口居中?
如何使getfileopenname函数打开的窗口居中?谢谢
------解决方案--------------------
...