Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Проверка перед максимизацией / 12 сообщений из 12, страница 1 из 1
26.03.2004, 12:24
    #32458261
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
в форме на загрузку стоит

echo false
docmd.maximize
echo true


как сделать проверку что форма уже не максимизирована и запускать код только в этом случае.

желательно без апи.
...
Рейтинг: 0 / 0
26.03.2004, 21:17
    #32459268
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
Без API... Щас начнется обсуждение типа того, что было с различением печати и предпросмотра. Страниц через 12 найдется бубен.
...
Рейтинг: 0 / 0
26.03.2004, 23:37
    #32459329
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
Можно на Resize повеситься...

Можно при:
Код: plaintext
1.
2.
3.
echo false 
docmd.maximize 
echo true 
считывать Height и Width , а затем сравнивать с текущими.
...
Рейтинг: 0 / 0
26.03.2004, 23:46
    #32459336
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
Height и Width в максимизированном виде вроде не меняются.
...
Рейтинг: 0 / 0
26.03.2004, 23:48
    #32459338
Odess
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
Вопрос - а зачем?
Пусть себе выполняется - не такая уж тяжелая штука для процессора ;-)
...
Рейтинг: 0 / 0
26.03.2004, 23:51
    #32459342
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
Кто-то кого-то не понял. :)
Ну да ладно... Автор придет - разберется :)
...
Рейтинг: 0 / 0
29.03.2004, 09:53
    #32460133
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
тема такая, что у меня все формы, кроме диалогов разработаны под максимизацию

поэтому ставлю в начало каждой формы этот код.
в принципе отслеживать что размер изменился нужды нет - хочешь не максимальный размер - пожалуста

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

можно конечно сделать флаг и если пока идет максимизация - долгоиграющие процедуры не выполнять

вот мне и подумалось может кто делал - чего огород городить?
а оказалось что не все так просто..
...
Рейтинг: 0 / 0
29.03.2004, 17:52
    #32461258
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
Вот, в хелпе a2002 встретил:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
' Enter on single line in Declarations section of Module window.'
Declare Function IsZoomed Lib  "user32"  (ByVal hWnd As Long) As Long

Sub Form_Activate()
    Dim intWindowHandle As Long
    intWindowHandle = Screen.ActiveForm.hWnd
    If Not IsZoomed(intWindowHandle) Then
        DoCmd.Maximize
    End If
End Sub
...
Рейтинг: 0 / 0
29.03.2004, 17:55
    #32461262
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
спасибки, то что нужно.
буду пробовать
...
Рейтинг: 0 / 0
29.03.2004, 17:56
    #32461266
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
а просил без API
...
Рейтинг: 0 / 0
29.03.2004, 18:06
    #32461294
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
все отлично, работает.
правда немножко подправил и вынес в публичный модуль для общего пользования

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Declare Function IsZoomed Lib  "user32"  (ByVal hWnd As Long) As Long

Sub FormMaximize()
On Error Resume Next
    If Not IsZoomed(Screen.ActiveForm.hWnd) Then
        Echo False
        DoCmd.Maximize
        Echo True
    End If
End Sub


в OnLoad формы :

call FormMaximize
...
Рейтинг: 0 / 0
29.03.2004, 18:07
    #32461295
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка перед максимизацией
дык если былоб стандартное средство - а ведь нет
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Проверка перед максимизацией / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]