zoukankan      html  css  js  c++  java
  • C#控件随窗体大小自动调整

    构造函数中:

                int count = this.Controls.Count * 2 + 2;
                float [] factor=new float [count];
                int i = 0;
                factor[i++] = Size.Width;
                factor[i++] = Size.Height;
                foreach (Control ctrl in this.Controls)
                {
                    factor[i++] = ctrl.Location.X / (float)Size.Width;
                    factor[i++] = ctrl.Location.Y / (float)Size.Height;
                    ctrl.Tag = ctrl.Size;
                }
                Tag = factor;

    为控件的TAG属性加入大小

    Resize事件中自动调整大小

            private void Summary_Resize(object sender, EventArgs e)
            {
                float[] scale = (float[])Tag;
                int i = 2;
                foreach (Control ctrl in this.Controls)
                {
                    ctrl.Left = (int)(Size.Width * scale[i++]);
                    ctrl.Top = (int)(Size.Height * scale[i++]);
                    ctrl.Width = (int)(Size.Width / (float)scale[0] * ((Size)ctrl.Tag).Width);
                    ctrl.Height = (int)(Size.Height / (float)scale[1] * ((Size)ctrl.Tag).Height);

                }
            }

  • 相关阅读:
    C单链表操作
    如何为linux系统设置全局的默认网络代理
    Linux下动态库使用小结
    图片替代鼠标光标
    axios+FormData文件上传
    vue之回车触发表单提交
    viewer 照片查看器
    contains 之 点击元素外位置隐藏元素
    vue-cli 3.0之跨域请求代理配置及axios路径配置
    css之单边阴影
  • 原文地址:https://www.cnblogs.com/qzbnet/p/1415530.html
Copyright © 2011-2022 走看看