2013-11-22 2 views
0

У меня есть три CheckBox, которые мне нужно скрыть, когда моя форма закрыта или сведена к минимуму. Я знаю, как скрыть их с помощью события FormClosing. Вот что у меня есть для этого:Скрыть CheckBoxes, когда форма сведена к минимуму

Public Sub Tickers_Closed(sender As Object, e As EventArgs) Handles Me.FormClosing 
    Nordeen_Investing_3.CheckBox_NASDAQ.Hide() 
    Nordeen_Investing_3.CheckBox_NYSE.Hide() 
    Nordeen_Investing_3.CheckBox_AMEX.Hide() 
End Sub 

Как скрыть их, когда форма сведена к минимуму?

+1

Посмотрите на [ 'Form_ResizeEnd'] (http://msdn.microsoft.com/en-us/library/system.windows.forms.form.resizeend (V = против. 110) .aspx) - вы можете проверить «Me.WindowState = Minimized». Тем не менее, кем бы вы хотели это сделать? Если он сведен к минимуму или закрыт, он не может обрабатывать ввод в любом случае (по крайней мере, не через обработчики событий в виде запасных форм). – Basic

+0

«CheckBoxes» находятся в «MenuStrip», который содержится в моей «родительской форме». Но я хочу видеть их только тогда, когда «Детская форма» максимизирована. – gromit1

ответ

1

Я использовал комбинацию обоих ответов. Вот то, что работает:

Private Sub Tickers_Resize(sender As Object, e As EventArgs) Handles Me.Resize 
    If Me.WindowState = FormWindowState.Minimized Then 
     Nordeen_Investing_3.CheckBox_NASDAQ.Hide() 
     Nordeen_Investing_3.CheckBox_NYSE.Hide() 
     Nordeen_Investing_3.CheckBox_AMEX.Hide() 
    End If 
End Sub 
+0

+1 Спасибо за то, что нашли время, чтобы вернуться и опубликовать решение, которое сработало для вас. – Basic

1

В vb.net есть событие изменения размера. Внутри этого события вы просто положили оператор if, который будет выглядеть примерно так.

Private Sub Tickers_Resize(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Resize 

    if me.minimizebox then 
     Nordeen_Investing_3.CheckBox_NASDAQ.Hide() 
     Nordeen_Investing_3.CheckBox_NYSE.Hide() 
     Nordeen_Investing_3.CheckBox_AMEX.Hide() 
    end if 
end sub 
+0

Это выглядит хорошо, но я получаю эту ошибку. «Значение типа« Целое »не может быть преобразовано в« System.Drawing.Size ». – gromit1

+1

Попробуйте Me.minimizebox. Я отредактирую свой ответ. –

+0

Теперь ошибок нет, но флажки все еще есть. – gromit1

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