Esempio n. 1
0
        private void ResizeChildWindowsFollow(TabPage Tab)
        {
            if(Tab.Controls.Count > 0)
            {
                int WindowCount = Tab.Controls.Count;
                int Column,Row;

                Row = (int)Math.Floor((WindowCount-1)/MaxCol)+1;
                if(WindowCount < MaxCol)
                {
                    Column = WindowCount;
                }
                else
                {
                    Column = MaxCol;
                }
                Tab.SetAutoScrollMargin(0,0);
                //Tab.ScrollControlIntoView(Tab);
                int Width = (this.ClientSize.Width-7)/Column;
                int Height;
                int MaxHeight = 0, tmp;
                ListForm.ListForm lf;
                for(int i=0;i<Tab.Controls.Count;i++)
                {
                    lf = (ListForm.ListForm)Tab.Controls[i];
                    tmp = lf.ListBox.ItemHeight * (lf.ListBox.Items.Count+3) + lf.Caption.Height;
                    if(MaxHeight < tmp)
                    {
                        MaxHeight = tmp;
                    }
                }
                Height = MaxHeight;
                int curRow;
                int Mod;
                for(int i=0;i<WindowCount;i++)
                {
                    Tab.Controls[i].Width = Width;
                    Tab.Controls[i].Height = Height;
                    curRow = Math.DivRem(i,Column,out Mod);
                    Tab.Controls[i].Left = Mod*Width;
                    Tab.Controls[i].Top = curRow*Height;
                }
            }
        }
Esempio n. 2
0
        private void ResizeChildWindowsAuto(TabPage Tab)
        {
            if(Tab.Controls.Count > 0)
            {
                int WindowCount = Tab.Controls.Count;
                int Column,Row;

                Row = (int)Math.Floor((WindowCount-1)/MaxCol)+1;
                if(WindowCount < MaxCol)
                {
                    Column = WindowCount;
                }
                else
                {
                    Column = MaxCol;
                }
                Tab.SetAutoScrollMargin(0,0);
                int Width = (this.ClientRectangle.Width-7)/Column;
                int Height = (this.ClientRectangle.Height-this.statusBarEx1.Height-27)/Row;
                int curRow;
                int Mod;
                for(int i=0;i<WindowCount;i++)
                {
                    Tab.Controls[i].Width = Width;
                    Tab.Controls[i].Height = Height;
                    curRow = Math.DivRem(i,Column,out Mod);
                    Tab.Controls[i].Left = Mod*Width;
                    Tab.Controls[i].Top = curRow*Height;
                }
            }
        }