Integer li_index,li_i,li_pos
String ls_editStyle
String ls_temp,ls_bgprevmc,ls_next,ls_now
Integer li_flag
Long ll_RowNo,ll_row
DataWindowChild ldwc_temp
choose case dwo.name
case 'bgxm'
dw_1.Modify("bghnr_dw.Visible=0")
dw_1.Modify("bghnr_e.Visible=0")
dw_1.Modify("bghnr_n.Visible=0")
dw_1.Modify("bghnr_em.Visible=0")
dw_1.Modify("bghnr_lb.Visible=0")
dw_1.Modify("bghnr_dw.Visible=0")
li_index =Integer(idw_target.Describe(String(data) + '.id'))
This.Setitem(Row,'bgqnr',String(idw_target.Object.data[1,li_index]))
ls_EditStyle =idw_target.Describe(Data + '.Edit.Style')
choose case ls_EditStyle
case'dddw'
ls_temp= idw_target.Describe(Data + '.dddw.name')
dw_1.Modify("bghnr_dw.dddw.name='"+ ls_temp + "'")
ls_temp= idw_target.Describe(Data + '.dddw.DataColumn')
dw_1.Modify("bghnr_dw.dddw.DataColumn='"+ ls_temp + "'")
ls_bmname=ls_temp
ls_temp= idw_target.Describe(Data + '.dddw.DisplayColumn')
dw_1.Modify("bghnr_dw.dddw.DisplayColumn='"+ ls_temp + "'")
dw_1.Modify("bghnr_dw.Visible=1")
is_flag= '_dw'
ifdw_1.Getchild('bghnr_dw',ldwc_temp)<> 1 thenreturn
ldwc_temp.SetTransObject(SQLCA)
ldwc_temp.Retrieve()
//取变更前编码名称-begin
ls_bgprevmc=dw_1.GetItemstring(row,"bgqnr")
ifThis.GetChild("bghnr_dw",ldwc_temp)<> 1 thenreturn
ifls_bmname<>'deptcode' then
ll_Row= ldwc_temp.Find(ls_bmname+"=" + trim(ls_bgprevmc) + "",1,ldwc_temp.RowCount())
else
ll_Row= ldwc_temp.Find(ls_bmname+"='" + trim(ls_bgprevmc) + "'",1,ldwc_temp.RowCount())
endif
ifll_Row < 1 then
MessageBox('提示aaaaavvvv','出现异常错误!',StopSign!)
return
endif
is_prevbm=ls_bgprevmc
ls_bgprevmc=ldwc_temp.GetItemstring(ll_Row,'mc')
This.Setitem(Row,'bgqnr',ls_bgprevmc)
//取变更前编码名称-end
case'ddlb'
dw_1.Modify("bghnr_lb.Visible=1")
is_flag= '_lb'
ls_temp= idw_target.Describe(Data +'.values')
dw_1.Modify("bghnr_lb.values='"+ ls_temp + "'")
//取变更前下拉名称-begin
ls_bgprevmc=dw_1.GetItemstring(row,"bgqnr")
is_prevbm=ls_bgprevmc
//-
ls_next=ls_temp
li_pos=Pos(ls_temp,'/')
//messagebox(ls_temp+string(li_pos),mid(ls_next,li_pos- 1,1))
forli_i=integer(mid(ls_temp,li_pos - 1,1)) to integer(is_prevbm)
li_pos= Posw(ls_next,'/')
ifli_pos < 1 then EXIT
ls_now=leftw(ls_next,li_pos- 1)
ls_next=Rightw(ls_next,lenw(ls_next) -li_pos)
next
//-
ls_bgprevmc=trimw(leftw(ls_now,lenw(ls_now)-1))
This.Setitem(Row,'bgqnr',ls_bgprevmc)
//取变更前下拉名称-end
case'edit'
dw_1.Modify("bghnr_e.Visible=1")
is_flag='_e'
is_prevbm='-100'//非编码的标志
case'editmask'
dw_1.Modify("bghnr_em.Visible=1")
is_flag= '_em'
ls_temp= idw_target.Describe(Data + '.mask')
dw_1.Modify("bghnr_em.mask='"+ ls_temp +"'")
This.Setitem(Row,'bgqnr',String(idw_target.Object.data[1,li_index],"yyyy-mm-dd"))
is_prevbm='-100'//非编码的标志
end choose
case 'bghnr_dw'
ls_EditStyle =this.Describe(dwo.name + ".Edit.Style")
if ls_EditStyle<> 'dddw' then return
ifThis.GetChild(dwo.name,ldwc_temp) <>1 then return
ll_RowNo =ldwc_temp.Find("nbm=" + string(data) ,0 ,ldwc_temp.RowCount())
if ll_RowNo < 1then return
li_flag =ldwc_temp.GetItemNumber(ll_RowNo,'c_zt')
if li_flag = 1 thenreturn
This.SetItem(Row,string(dwo.name),This.GetItemNumber(Row,String(dwo.name)))
MessageBox('提示','请选择尚未过期的代码!~r~n白色背景为尚未过期的编码,其它颜色为已经停用的编码!',Stopsign!)
return 2
end choose
分享到:
相关推荐
7. **例程**:例程通常是一段示例代码,展示了如何在实际项目中使用上述模块。通过运行和分析例程,开发者可以更好地理解如何在自己的程序中应用这些颜色设置技术。 8. **更新日志**:06.10.8更新可能包含了一些...
Tooltip是一种小型的、非模态的窗口,它会在鼠标指针悬停在某个控件上一段时间后自动出现,显示该控件的简短描述或帮助信息。在ClistCtrl中添加tooltip,可以为用户解释列表中某些项的具体含义,增强可理解性。 ...
首先,`DemoListCtrl.zip`是一个包含示例代码的压缩文件,它解决了网上常见的一个问题:在CListCtrl中仅能刷新一行字体颜色或不能动态刷新背景色。 MFC是微软提供的一个C++类库,用于简化Windows应用程序的开发。...
学习和理解这段代码可以帮助你更好地掌握VC++中自定义控件和MFC编程的技巧,也可以为你在实际项目中实现类似功能提供参考。 总的来说,这个压缩包提供的源码实例是一个关于VC++ MFC自定义控件设计的好案例,涵盖了...
`CTreeCtrl`是一种树形控件,用于展示层次结构的数据。它通常用于文件浏览器或选项设置等场景。`CTreeCtrl`提供了添加、删除节点,以及处理节点展开和折叠事件的功能。开发者可以使用`InsertItem`函数插入新的节点,...
里面有详细的关于CListView的介绍和实例,不过有些地方它并未讲清楚,你只能看mfc源代码凭经验猜测某个函数的用法以及某些事件产生的消息,比如当所选Item改变时产生消息LVN_ITEMCHANGED,这个消息使我能在选中某一个...
10. **文档和注释**:良好的源码应该包含清晰的注释,解释关键代码段的作用,方便其他开发者理解和维护。 综上所述,这个"易语言超级列表框消息应用源码"着重于易语言中控件消息的处理,展示了如何通过消息机制来...
通过处理LVN_DRAWITEM、LVN_ITEMCHANGED等消息,开发者可以精确控制列表项的外观,包括颜色、字体、边框等。自绘CListCtrl的主要步骤包括: - 注册控件的自绘模式:调用SetItemState()函数,设置LSV_STATEFLAG::...
通过查看和分析这段代码,开发者可以学习如何在实际项目中有效地利用CList View控件。 总结来说,WinCE CList View控件是开发嵌入式系统界面时的重要工具,它提供了丰富的功能和灵活性,帮助开发者创建高效、直观的...
5. **处理其他通知**:可能还需要处理其他一些通知,比如LVN_ITEMCHANGED,以更新已修改的项,或者LVN_BEGINSCROLL,以调整数据的可视范围。 **文件内容** 压缩包中的"**MFC-Listcontrol控件虚拟列表测试**"文件很...
- 将当前选中的项的索引赋值给`i`,但这段代码实际上没有后续用途,可以考虑移除或者修改其用途。 ##### 函数 `UnCheckOtherItem` 该函数用于取消除了指定项之外的所有项目的选中状态。 ```cpp void CAlarmType:...
通过阅读和理解这段源码,你可以更深入地了解如何在实际项目中使用列表视控件。 此外,利用工具如Visual Studio的资源编辑器,可以直观地设计对话框布局,包括列表视控件的位置、大小和样式。同时,调试工具可以...
以下是一段代码示例: ```cpp CImageList m_image_list; m_image_list.Create(IDB_CALLER2, 16, 10, RGB(192, 192, 192)); m_image_list.SetBkColor(GetSysColor(COLOR_WINDOW)); CListCtrl m_caller_list; m_...
这段代码会在List Control的第一行插入“行1”,并在第二列设置为“数据1”。 List Control还支持多种样式,如报告视图(LV_VIEW_REPORT)、小图标视图(LV_VIEW_SMALLICON)等。可以使用SetView()函数切换视图模式...
在Windows编程领域,`CLISTCTRL`是MFC(Microsoft Foundation Classes)库中用于实现列表视图控件的类。...在`ColorListCtrl.cpp`和`ColorListCtrl.h`这两个文件中,应该包含了实现这个功能的具体代码逻辑。
同时,需要处理`LVN_ITEMCHANGED`通知,以更新拖放状态的视觉反馈。 5. **自定义绘图**: 为了在拖动过程中显示拖动项的图像,可能需要重载`CListCtrl`的`DrawItem`函数,根据当前的拖放状态绘制特殊的图像。这...
文件`ListTest`可能是包含了示例代码或资源的文件,例如.rc资源文件,.cpp源代码文件等。实际操作时,你需要查看这些文件,了解如何将上述理论知识应用到实际项目中。 总之,实现“CListCtrl 完全重绘”涉及多个...
如果你是VC++的新手,通过阅读和理解这段代码,你可以更好地掌握MFC中ListView控件的使用,以及如何处理用户交互事件。对于进一步的学习,可以参考MSDN文档和相关的VC++教程,以加深对MFC和Windows编程的理解。
在提供的压缩包中,可能包含了一个简单的源代码示例,演示了上述步骤。通过分析和学习这个例子,初学者可以理解如何在实际项目中使用CListCtrl控件进行动态数据操作。对于更复杂的应用,可能涉及到排序、过滤、选择...
这种方法可以全局地改变`CListCtrl`的背景颜色,但如果你需要为每个列表项设置不同的背景色,可能需要处理`LVN_ITEMCHANGED`或`NM_CUSTOMDRAW`消息。`NM_CUSTOMDRAW`消息允许你在绘制列表项时进行自定义绘制: ```...