2012-01-03 4 views
-1

У меня проблема с формами MDI и их расположением. У меня есть контейнерная форма, внутри которой я открываю несколько дочерних форм. Также обратите внимание, что в форме контейнера у меня есть ToolStrip вверху, и он также прикреплен к вершине. В каждой из дочерних форм я задал следующие свойства. Я также установил их во время разработки, но он почему-то не работал, поэтому я также добавил их в событие form_load.Формы VB.Net - формы MDI не найдены правильно

Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None 
Me.Dock = DockStyle.Fill 
ReSizeAndArrange(Me.Width, Me.Height, False) 

Функция ReSizeAndArrange вызывается form_load и form_layout событий. Проблема, с которой я сталкиваюсь, состоит в том, что дочерние формы не заполняют оставшееся пространство правильно или, если на то пошло, всю родительскую форму. Когда я перехожу, вот координаты, которые я получаю для дочерней формы.

frmContainer.Size {Width = 972 Height = 972} System.Drawing.Size 
me.Size  {Width = 968 Height = 901} System.Drawing.Size 
frmContainer.ToolStripMain.Size {Width = 954 Height = 67} System.Drawing.Size 
frmContainer.Location {X = 90 Y = 22} System.Drawing.Point 
me.Location  {X = -9 Y = -36} System.Drawing.Point 

Не следует ли Me.Location быть 0,0? Числа складываются по размерам, которые я думаю. Разницу в 4 пикселя можно объяснить границей, однако местоположение не выяснено. Может ли кто-нибудь это расшифровать?

+0

Код не важен, потому что я улавливаю вышеуказанные значения в первой строке этой функции. – Chiwda

+0

Почему -1? Кто? – Chiwda

ответ

0

ОК, я сам решил эту проблему, установив расположение формы (0,0). Он все еще не отвечает на вопрос, но это обходное решение.

0

Это потому, что 0, 0 не устанавливает ограничений на размер и макет формы. Это позволяет ему решать. Любое значение, которое вы ввели, заставляет форму соответствовать вашим спецификациям. 0, 0 - это не работа, это так, как вы сами это делаете.

+0

Прошу прощения, но я не понял ваших объяснений. Не могли бы вы рассказать? – Chiwda

Смежные вопросы