如何实现窗口左侧点击项目,窗口右侧出现相应的控件?(说的不清楚,请详见内容)

tianjy 2008-02-01 09:28:58
比如说我有这样一个窗体,窗口左侧是一个treeview控件,内容如下

+ 人员管理
+ 张三
+ 个人信息
+ 家庭信息
+ 李四
+ 个人信息
+ 家庭信息
+ 王五
+ 个人信息
+ 家庭信息
…………

窗体
+----------------------------------------------------------------------------+
|Form1 |
| +------------------------+ +----------------------------------------+ |
| | | | Group1 | |
| | | | | |
| | treeview1 | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| +------------------------+ +----------------------------------------+ |
+----------------------------------------------------------------------------+

要实现的功能,点击左侧treeview控件中的某一node后,右侧group中出现相应的控件。
比如:点击人名张三后,group中出现此人的基本信息,并且出现删除按钮。
点击个人信息后,group中出现此人的详细信息,可以修改,有更新的按钮。
点击家庭信息后,group中出现此人的家庭信息,可以修改,有更新的按钮。


就像迅雷的设置窗口那样。
自己想了很长时间没有搞定,用语句生成控件简单一点的还可以,要是像迅雷的设置窗口那样复杂的工作量就太大了。
恳请高手指点,谢谢!
...全文
136 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
steven_srl 2008-02-02
  • 打赏
  • 举报
回复
我自己想的,应该还有更简单的方法

动态或者静态设置每组显示的控件,用函数!
然后在下面事件中实现
Private Sub TreeView1_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect
Dim str As String
str = TreeView1.SelectedNode.Text'这里
Select Case str
Case "个人信息"
<释放前组控件组>
<显示相关控件组>
Case "家庭信息"
<释放前组控件组>
<显示相关控件组>
Case "姓名"
<释放前组控件组>
<显示相关控件组>
End Select
End Sub

只是思路,没有具体实现过,如果有问题,请大家指出^_^
steven_srl 2008-02-02
  • 打赏
  • 举报
回复
关注一下!
tianjy 2008-02-02
  • 打赏
  • 举报
回复
谢谢上面各位的思路,我还是先用显示隐藏控件的方法吧,这个比较简单。
动态加载代码量惊人。
jamesfay 2008-02-01
  • 打赏
  • 举报
回复
给你一堆例子,不过不是垃圾,都很有用,很多常用控件和常用功能都有例子

去msdn.microsoft.com/library 搜索101sample

http://www.microsoft.com/downloads/details.aspx?FamilyID=e9dbcdeb-7152-454d-9936-495ffd79afd0&DisplayLang=en


lnwuyaowei 2008-02-01
  • 打赏
  • 举报
回复
WEB or winform?
查:动态加载控件
足球中国 2008-02-01
  • 打赏
  • 举报
回复
TreeView1_NodeMouseClick事件显示和隐藏相应的控件.判断条伯就用treeview1.tag来判断应该隐藏和显示哪个.
Private Sub TreeView1_NodeMouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeNodeMouseClickEventArgs) Handles TreeView1.NodeMouseClick
Select Case e.Node.Tag
Case "人员管理"
'group人员管理.visible=true
Case "姓名"
'group姓名.visible=true

Case "个人信息"
'group个人信息.visible=true

Case "家庭信息"
'group家庭信息.visible=true
End Select
End Sub
对于动态加载控件的比较麻烦些.要声明事件委托,添加.还要对控件精确定位.等楼主水平提高了.自然就可解决这些小问题了.

16,547

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧