控件anchor和dock属性_控件的常用属性

控件anchor和dock属性_控件的常用属性在设计窗体时,这两个属性特别有用,如果用户认为改变窗口的大小并不容易,应确保窗口看起来显示的不是那么乱,并编写很多代码来实现这个效果,许多程序解决这个问题都是禁止给窗口重新设置大小这显然是解决问题的最简单的方法,但不是最好的方法,因此引入了Anchor和Dock属性。1、Anchor属性用于指定在用户重新设置窗口的大小时控件应该如何响应,可以指定如果控件重新设置了大小,就根据控件的边界去锁

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
在设计窗体时,这两个属性特别有用,如果用户认为改变窗口的大小并不容易,应确保窗口看起来显示的不是那么乱,并编写很多代码来实现这个效果,许多程序解决这个问题都是禁止给窗口重新设置大小

这显然是解决问题的最简单的方法,但不是最好的方法,因此引入了Anchor和Dock属性。

1、Anchor属性用于指定在用户重新设置窗口的大小时控件应该如何响应,可以指定如果控件重新设置了大小,就根据控件的边界去锁定它,或者其大小不变,但根据窗口的边界来锚定它的位置

        正如名称暗示的那样,这个属性迫使控件将其自身定位在父窗体或父控件中某个相对或绝对位置,这个属性有四个可以开启或关闭的值

            * Top–表示控件中与父窗体(父控件)相关的顶部应该保持固定

            * Bottom–表示控件中与父窗体(父控件)相关的底部应该保持固定

            * Left–表示控件中与父窗体(父控件)相关的左边缘应该保持固定

            * Right–表示控件中与父窗体(父控件)相关的右边缘应该保持固定

        正如演示的那样,每个控件在父窗体上都自动的保持它的位置,需要注意的是:

            ①如果没有指定一个控件有左右锚定,它将在父窗体中保留一个相对左右的位置,其它也是一样

            ②如果选择了所有Anchor值的控件,控件只是在调整父窗体大小时,随着增大和缩小–与窗体的边缘比较起来它的所有边缘保持静止不变。

        

2、Dock属性用于指定控件应该停放在窗口的边框上,用户重新设置了窗口的大小,这个控件将继续停放在窗口的边框上,例如,如果指定控件停留在窗口的底部边界上,则无论窗口的大小怎么改变,这个控件都将改变大小,或移动其位置,确保总是位于屏幕的底部。

        Dock属性迫使控件紧贴父窗体的某个边缘。虽然Anchor属性也可以实现这一点,但是Dock属性使得能够在父窗体中让子窗体可以再上方(或旁边)互相堆叠,如果某个子窗体改变了大小,其它停驻在它旁边的子窗体也会随之改变。和Anchor属性不同的是,可以将Dock属性设置为一个单值:

            *Top–迫使控件位于父窗体(或控件)的顶部,如果有同一个父窗体的其它子控件也被设置为停驻在顶部的话,那么控件将在彼此上方互相堆叠

            * Bottom–迫使控件位于父窗体(或控件)的底部,如果有同一个父窗体的其它子控件也被设置为停驻在底部的话,那么控件将在彼此上方互相堆叠

            * Left–迫使控件位于父窗体(或控件)的左边,如果有同一个父窗体的其它子控件也被设置为停驻在左边的话,那么控件将在彼此旁边互相堆叠

            * Right–迫使控件位于父窗体(或控件)的右边,如果有同一个父窗体的其它子控件也被设置为停驻在右边的话,那么控件将在彼此旁边互相堆叠

            * Fill–迫使控件位于父窗体(或控件)的上方,如果有同一个父窗体的其它子控件也被设置为停驻在上方的话,那么控件将在彼此上方互相堆叠

            * None–表示控件将会正常运转

        需要注意的是:对于Dock属性,添加控件的顺序会影响它们停驻的方式。

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 硬盘数据恢复的方法_固态硬盘覆盖数据恢复吗

    硬盘数据恢复的方法_固态硬盘覆盖数据恢复吗想必许多朋友在硬盘数据遭到损坏时,第一反应就是拿到外面的电脑店去找专业的人士帮忙修复,这虽然也是一个可行的方法,但同时小编也觉得大可不必浪费这些时间专门跑到外面,且有可能要付出高昂的修复费用。那么,当硬盘损坏时,我们应如何第一时间恢复数据呢?答案就是用专业的数据恢复软件扫描恢复。所以在这里教大家如何用数据恢复软件来找回硬盘数据,不限制时间和地点,随时随地就能修复。操作也很简单,让我们来看看详细的步骤。1.在超级兔子官网下载软件后打开至主界面,在场景模式下选择U盘/内存卡恢复。2.点.

    2022年9月21日
    0
  • bat批量修改文件名_bat批量修改文件夹名称不成功

    bat批量修改文件名_bat批量修改文件夹名称不成功在测试的时候,经常会遇到修改host的情况,每次都打开host手动添加,很繁琐地,怎么写个批处理文件,双击下就把host修改了呢,请看下面代码:@echooffcolor0F@attrib-r”%windir%\system32\drivers\

    2022年10月9日
    0
  • pytest指定用例_测试用例怎么编写

    pytest指定用例_测试用例怎么编写前言测试用例在设计的时候,我们一般要求不要有先后顺序,用例是可以打乱了执行的,这样才能达到测试的效果.有些同学在写用例的时候,用例写了先后顺序,有先后顺序后,后面还会有新的问题(如:上个用例返回

    2022年7月28日
    1
  • 手把手包教会_手把手地教是什么意思

    手把手包教会_手把手地教是什么意思文章目录前言?往期知识点Selenium简介1.1,组件1.2,特点前言Selenium是一个用于web自动化测试的框架,在使用Ajax请求数据的页面中,会出现sign,token等密钥,如果考虑去激活成功教程可能花费的精力较多,所以考虑借助使用Selenium框架来实现数据爬取。?往期知识点?往期内容回顾?python教程】保姆版教使用pymysql模块连接MySQL实现增删改查?python+requests+BeautifulSoup实现对数据保存到mysql数据库?sele

    2022年10月20日
    0
  • leapftp乱码_如何用网格本做笔记

    leapftp乱码_如何用网格本做笔记生活对我下了手2019年7月23星期二大晴天1.主要掌握怎么连接服务器2.单个文件上传3.整个文件夹上传leapftp界面主要功能板块介绍1.管理ftp服务器配置的地方2.服务器网站文件窗口界面3.上传状态的窗口界面4.正在上传的文件窗口界面5.本地电脑文件窗口界面怎么连接ftp服务器服务器上要有ftp服务,1.你要有ftp服务器的账号,2.你要有ftp服务器的密…

    2022年10月28日
    0
  • 数据结构 – 链表和数组的区别[通俗易懂]

    数据结构 – 链表和数组的区别[通俗易懂]文章目录数据结构-链表和数组的区别1、在内存上2、时间复杂度3、链表的结构4、各自的优缺点5、为什么使用较常用的是单头链表数据结构-链表和数组的区别1、在内存上数组是连续内存,因为是静态分配,所以不可扩容链表是非连续内存,动态分配,也没有顺序,它通过链表中的next指针保存逻辑顺序2、时间复杂度查找时间复杂度1、数组使用下标定位,1次就可以找到,O(1)2、链表需要循环去找,最大需要N次,O(N)插入删除时间复杂度1、数组插入删除需要移动其它元素,复杂度

    2022年10月28日
    0

发表回复

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

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