使用SplitContainer控件

使用SplitContainer控件在Windows资源管理器中,当把鼠标指针移动到TreeView控件和ListView控件之间时,可以左右拖动鼠标调整TreeView控件和ListView控件在主窗口中的大小比例,以适应不同显示内容

大家好,又见面了,我是你们的朋友全栈君。

8.6 使用SplitContainer控件

 

  在Windows资源管理器中,当把鼠标指针移动到TreeView控件和ListView控件之间时,可以左右拖动鼠标调整TreeView控件和ListView控件在主窗口中的大小比例,以适应不同显示内容的需要。我们可以使用SplitContainer控件实现这种功能。

  可以将SplitContainer控件看做是一个复合体,它是由一个可移动的拆分条分隔的两个面板。当鼠标指针悬停在该拆分条上时,指针将相应地改变形状以显示该拆分条是可移动的。使用SplitContainer控件,可以创建复合的用户界面(通常,在一个面板中的选择决定了在另一个面板中显示哪些对象)。这种排列对于显示和浏览信息非常有用。拥有两个面板使你可以聚合不同区域中的信息,并且用户可以轻松地使用拆分条(也称为”拆分器”)调整面板的大小。

  首先将RssTreeView和RssListView控件的Dock属性都设置为None,然后适当缩小这两个控件的大小,留出一定的主窗体空白区域。然后从工具箱中拖放一个SplitContainer控件到主窗体的空白区域,这时在该控件中的左右两侧会出现Panel1和Panel2两个容器,在这两个容器中放置的控件可以调整大小比例,用户使用拆分条调整的就是这两个容器的大小。把一个Label控件拖放到Panel1中,将Text属性设置为RSS文档列表,将Dock属性设置为Top;然后把RssTreeView控件拖放到Panel1中,将RssListView控件拖放到Panel2中,然后将这两个控件的Dock属性都设置为Fill,填充满各自所在的Panel,如图8.16所示。

<span role="heading" aria-level="2">使用SplitContainer控件
 

  (点击查看大图)图8.16 SplitContainer控件

 

  将SplitContainer控件的Dock属性设置为Fill,填充满整个主窗体;将FixedPanel属性设置为Panel1,这样在调整主窗体的大小时,Panel1面板的大小默认不变;将Panel1MinSize属性设置为50,该属性设置Panel1容器的最小宽度;同样地,将Panel2MinSize属性设置为100。属性Panel1Collapsed和Panel2Collapsed分别设定Panel1和Panel2两个容器是否被折叠,所谓折叠即是否隐藏某一个Panel。属性SplitterDistance设置拆分条与SplitContainer控件左边的距离。属性SplitterIncrement设置用户拖动拆分条时,每次移动的距离。属性SplitterWidth设置拆分条的宽度。Orientation属性决定拆分器的方向,而不是决定控件本身的方向。因此,当该属性设置为Vertical时,拆分器将垂直放置,从而产生左面板和右面板。

  现在我们再次运行程序,可以试着用鼠标拖动拆分器,改变RssTreeView和RssListView控件的大小比例,如图8.17所示。

<span role="heading" aria-level="2">使用SplitContainer控件
 



(点击查看大图)图8.17 运行效果

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154799.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月1日 上午8:46
下一篇 2022年7月1日 上午8:46


相关推荐

  • ChatGPT撰写社交媒体内容日历 ChatGPT内容营销策略

    ChatGPT撰写社交媒体内容日历 ChatGPT内容营销策略

    2026年3月12日
    2
  • 软件封装工具(牛人自制升降工具)

    平时Java项目的开发通常需要统一管理日志(Log)的输出,例如控制日志信息输送的目的地(控制台、文件等),控制每一条日志的输出格式,把日志分为不同的级别等。常用的比较成熟的Java日志管理工具有Apache的Log4j等。但有时我们平时一时兴趣想写个小Dmeo或小工具,想较好的控制日志的输出,引入专业的日志管理库又显得比较繁琐,下面我就自己封装一个简单的日志工具类(LogUtils.java)。

    2022年4月13日
    42
  • python元组相加

    python元组相加元组相加时 直接上图 原以为是这样 实际错了 是个 int 型 实际应该是 加个逗号才是元组 小问题 但是如果直接去用的话就可能会出错 提醒下自己

    2026年3月18日
    2
  • n8n的ai工作流怎么发布

    n8n的ai工作流怎么发布

    2026年3月15日
    2
  • 加权voronoi图 matlab,加权voronoi图matlab

    加权voronoi图 matlab,加权voronoi图matlab广义 Voronoi 图的快速生成算法 电力 水利 工程科技 专业资料 27 卷第 Voronoi 图理论与应用新成 3 页免费 Voronoi 图理论与应用新成 3 页免费 Voronoi 图的首最邻近递归 4 页免费加权 Voronoi 图重心在公共 5 页免费 基于 Voronoi 图的空间区域划分算法董雪刘润涛 哈尔滨理工大学应用科学学 动态 Vorono

    2026年3月17日
    2
  • 面试题—5种单例模式写法以及单线程和多线程下的区别

    面试题—5种单例模式写法以及单线程和多线程下的区别闲来无事看之前的博客,发现单例模式只会写2中。所以再重新开一篇博客,将目前自己所能理解的几种单例模式全部总结下。______________________________________________________________________________________________________________________1、懒汉式(最基本的) 单线程版写单例模式(饿汉式)的步骤: 1):必须在该类中,自己先创建出一个对象。 2):私有化自身的…

    2022年6月13日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号