zoukankan      html  css  js  c++  java
  • 给MDI父窗体添加背景和解决闪烁的问题

     #region 给MDI 父窗体添加背景和解决闪烁的问题
            //1、在Properties/Resources.resx中添加名称为"BackgroundImage"的背景图片

    //2、在以下位置添加BackgroundNoSplash();

    public FrmMain()
            {

              

                InitializeComponent();


                //给MDI 父窗体添加背景和解决闪烁的问题
                BackgroundNoSplash();


            }

    //以下代码复制到MDI主窗体代码中

            MdiClient mdiClient = new MdiClient();
           
            private void BackgroundNoSplash()
            {
                foreach (Control var in this.Controls)
                {
                    if (var is MdiClient)
                    {
                        mdiClient = var as MdiClient;
                        break;
                    }
                }

                if (mdiClient != null)
                {
                    mdiClient.Paint += new PaintEventHandler(OnMdiClientPaint);
                    System.Reflection.MethodInfo mi = (mdiClient as Control).GetType().GetMethod("SetStyle", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
                    mi.Invoke(mdiClient, new object[] { ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint | ControlStyles.OptimizedDoubleBuffer
                     | ControlStyles.ResizeRedraw, true });

                }
            }

            private void OnMdiClientPaint(object sender, PaintEventArgs e)
             {
                Graphics g = e.Graphics;
                 g.DrawImage(Properties.Resources.BackgroundImage, new Rectangle(0, 0, mdiClient.Width, mdiClient.Height));
                 string msg = "系统名称+版本号+最后更新日期";
                 SizeF size = e.Graphics.MeasureString(msg, this.Font);
                 g.DrawString(msg, this.Font, new SolidBrush(Color.White), mdiClient.Width - size.Width, mdiClient.Height - size.Height);

             }

            #endregion

    分享到: 更多
  • 相关阅读:
    ZooKeeper实践:(1)集群管理
    删除重复数据只保留一条
    查询sqlserver 大小写
    字段按位数自动加空格
    批量更新数据遍历数据
    测试端口号是否开通
    收缩数据库
    插入ID=-1 的数据
    查询重复语句,多表查询
    oracle数据查询时间
  • 原文地址:https://www.cnblogs.com/tiasys/p/1615507.html
Copyright © 2011-2022 走看看