Как правильно управлять свёрнытым окном в MDI форме.
а двигать подчинённое(свёрнутое) окно могу. Как сделать так, что-бы перемещать подчинённое окно нельзя было. Что бы оно было всегда внизу MDIформы, если даже мы будем менять размеры MDIформы.
К примеру свернул окно в MDI форме,
а двигать подчинённое(свёрнутое) окно могу. Как сделать так, что-бы перемещать подчинённое окно нельзя было. Что бы оно было всегда внизу MDIформы, если даже мы будем менять размеры MDIформы.
Только API... Немного попозже наши специ в этой области зайдут сюда и чего-нибудь посоветуют.
Только API... Немного попозже наши специ в этой области зайдут сюда и чего-нибудь посоветуют.
Будет супер!
Будет супер!
посмотри http://forum.codenet.ru/showthread.php?threadid=14857 Там есть описание получения и установки некоторых параметров отображения окна. Можно попробовать при помощи их.
А ещё я тут вариант придумал:
1. На событие минимизации дочерней формы вешаешь флаг.
2. Если начинаешь двигать форму, или ресайзишь родительскую форму, и этот флаг установлен, просто изменяешь положение дочерней формы так, чтобы его лефт и топ находились в нужном угле материнского окна.
3. Нм максимизацию этот флаг сбрасываешь.
Будет супер!
не понял вопроса :(
Может есть ocx файл. Или что либо в API есть.
Это по любому. Может кто нибуть капнёт глубже.
Интересная проблема.
По идее это очень часто применяемая функция.
Может есть ocx файл. Или что либо в API есть.
Это по любому. Может кто нибуть капнёт глубже.
Интересная проблема.
Мой способ не сработал?:{
Мой способ не сработал?:{
Хорошо. Попробую... .
посмотри http://forum.codenet.ru/showthread.php?threadid=14857 Там есть описание получения и установки некоторых параметров отображения окна. Можно попробовать при помощи их.
А ещё я тут вариант придумал:
1. На событие минимизации дочерней формы вешаешь флаг.
2. Если начинаешь двигать форму, или ресайзишь родительскую форму, и этот флаг установлен, просто изменяешь положение дочерней формы так, чтобы его лефт и топ находились в нужном угле материнского окна.
3. Нм максимизацию этот флаг сбрасываешь.
Проверил твоё предложение.Результат ниже.
Private Sub MDIForm_Resize()
If FrmInt1.WindowState = 1 Then
FrmInt1.Top = 6000'Любое изменение
End If
End Sub
Ошибка во время выполнения программы '384':
Форма не может перемещаться или установлена по размеру в то время как минимизируется или максимизируется
p/s/
У формы при минимизации и мах..ии висят свои координаты положения на форме.
Во время минимизации двигаешь окно(координаты x/y), затем разворачиваешь, сворачиваешь/ и встаёт на точки x и y/, а не в низ MDIfom/
Где-то сабака зарыта.
Проверил твоё предложение.Результат ниже.
Private Sub MDIForm_Resize()
If FrmInt1.WindowState = 1 Then
FrmInt1.Top = 6000'Любое изменение
End If
End Sub
Ошибка во время выполнения программы '384':
Форма не может перемещаться или установлена по размеру в то время как минимизируется или максимизируется
p/s/
У формы при минимизации и мах..ии висят свои координаты положения на форме.
Во время минимизации двигаешь окно(координаты x/y), затем разворачиваешь, сворачиваешь/ и встаёт на точки x и y/, а не в низ MDIfom/
Где-то сабака зарыта.
Тут вопрос не к уважаемому wishco, а к All. У меня тут идея.
Какими API - функциями можно отслеживать перемещение окна? Никто не подскажет? по моему, тут самое простое - через API всё это отслеживать.
Теперь к wishco.
Попробуй так:
1. Если форма свёртывается, то отлавливать событие GotGocus и MouseMove и запрещать их. Тут только вопрос, как сместить форму туда, куда надо.
Тут вопрос не к уважаемому wishco, а к All. У меня тут идея.
Какими API - функциями можно отслеживать перемещение окна? Никто не подскажет? по моему, тут самое простое - через API всё это отслеживать.
Теперь к wishco.
Попробуй так:
1. Если форма свёртывается, то отлавливать событие GotGocus и MouseMove и запрещать их. Тут только вопрос, как сместить форму туда, куда надо.
Можно ли в обработке MouseMove опрашивать Мышь. Если да, то как.
Тогда Было бы прикольно, если в код MouseMove
поместить:
If Form.WindowState = 1 then
Form.Enabled = false
If "Кнопка мыши нажата then Form.WindowState = 0:Form.Enabled = true
end if
else:Form.Enabled = true
Больше ни чё не лезет в голову.
Но напомнить об ответе я должен.
Может есть какие либо интересные коды с MDI,
то кидайте.
Но а ответ АХОТА!!!