2009-06-12 2 views

ответ

0

Как только внешняя форма является MdiParent, область mdiclient будет расширяться, чтобы заполнить все пространство, не используемое другими контейнерами. Таким образом, вам нужно будет поместить изображение в другое место (например, панель состыкована влево, разделенная Splitter из клиентской области mdi) или не помещает изображение в дочерние формы.

0

Это форма MDI в .NET. Согласно моей копии Professional VB 2005 (Wrox), «в VB.NET родитель MDI может содержать любой элемент управления, который может содержать обычная форма. Кнопки, метки и т. Д. Могут быть размещены непосредственно на поверхности MDI. элементы управления будут отображаться перед любыми дочерними формами MDI, отображаемыми в клиентской области MDI »(выделено мной)

Я представляю, что вы пытаетесь сделать, чтобы какой-то логотип появился в клиентской области в Форма MDI? В этом случае вам нужно будет нарисовать это в событии Paint, а не с помощью элемента управления Image.

1

Небольшая идея для решения этой проблемы.

Используйте рамку изображения, чтобы показать изображение в MDI форме и попробуйте код ниже:

Private Sub MDIFORM_MdiChildActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.MdiChildActivate 

    Dim cnt As Integer = 0 
    For Each frm As Form In My.Application.OpenForms 
     cnt += 1 
    Next 
    If cnt > 1 Then 
     Me.PictureBox1.Hide() 
    Else 
     Me.PictureBox1.Show() 
    End If 
End Sub 
Смежные вопросы