powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
114 сообщений из 114, показаны все 5 страниц
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538211
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выкладываю замученый мною код (исходный код взят из Access 2002 Desktop Developer's Handbook
by Litwin, Getz, and Gunderloy (Sybex) Copyright 2001.) масштабирования и ресайзинга форм.
дополнено: масштабирование табличных форм, запоминание текущих размеров
(высоты и ширины) колонок, введены поправочные коэффициенты на ширину
полос прокруток, области выделения (полосы прокруток и область выделения
не масштабируются), запоминание текущего положения, размеров и масштаба
формы относительно размеров экрана, изменение ширины списков и ширин
столбцов в списках при пользовательском изменении размеров формы,
запоминание текущего положения сплиттеров (если есть). :)
Протестируйте (кому не лень) у себя. Жду замечаний и наезды (прошу только по делу).
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538212
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538230
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:( Ну вот стоило выложить уже косяк нашелся. Высоты подформ портятся. Буду искать.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538232
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БД открывается, но при попытке открыть форму frm1 и frm1sub4 Акс зависает с предложением сделать бэкап и насплетничать в Майкрософт.
Win XP SP2, Access 2003
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538239
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А теперь?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538240
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538263
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_worldБД открывается, но при попытке открыть форму frm1 и frm1sub4 Акс зависает с предложением сделать бэкап и насплетничать в Майкрософт.
Win XP SP2, Access 2003
Теперь не зависает?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538279
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно отловить когда пользователь меняет размеры и положение контролов на форме.
Есть 2 пути (которые я знаю):
1. На каждое событие рисайз сканировать все контролы (что называется в лоб)
2. Рейз ивент повесить на форму (в данном случае на маус ап на сплиттере) что тоже не совсем хорошо.
Есть еще идеи?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538292
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
рейз ивент отпадает. думал получится. :(
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538299
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока что тоже самое. Полный завис. Пришлось заходить с шифтом. Те же 2 формы не открываются
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538305
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот тебе на. А у меня работает Офис ХР Аксесс 2002, формат базы 2000.
В чем может быть дело?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538307
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скажите, кто пробовал, у кого еще зависает?
Или легче спросить у кого НЕ зависает?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538311
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще одна проблема - зависает мгновенно при попытке зайти в любой модуль. Неважно в какой, формы, стандартный. Может быть дело именно в этом. Я не смог даже просмотреть референсы, подумал сначала, что в этом дело. Я могу, конечно, применить обычный набор шаманских приемов, но, думаю, уместно вам знать об этом и исправить ситуацию
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538315
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А кстати, может быть у меня просто не регистрированы какие-то библиотеки, необходимые для работы программы. Напишите, какие нужны. Если есть, зарегим.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538316
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 mds_world
В модуле формы в событии опен закоментарены строчки:
mrfrm.RemoveFormsProperty ...
Снимите коментарии на RemoveFormsProperty, откомпилируйте и запустите форму frm1
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538318
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_worldА кстати, может быть у меня просто не регистрированы какие-то библиотеки, необходимые для работы программы. Напишите, какие нужны. Если есть, зарегим.
Библиотеки никакие не нужны. Разве что АПИ-функции.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538321
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторСнимите коментарии на RemoveFormsProperty, откомпилируйте и запустите форму frm1Я не могу зайти в код. Я уже писал об этом.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538326
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_worldИ еще одна проблема - зависает мгновенно при попытке зайти в любой модуль. Неважно в какой, формы, стандартный. Может быть дело именно в этом. Я не смог даже просмотреть референсы, подумал сначала, что в этом дело. Я могу, конечно, применить обычный набор шаманских приемов, но, думаю, уместно вам знать об этом и исправить ситуацию
Не заметил. даже в модуль не пускает.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538332
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 mds_world
Можете попробовать для меня следующее?
Запустите этот код, затем прочтите.
Код: plaintext
1.
2.
3.
   CurrentProject.AllForms("какую-нибудь форму").Properties("{1187C6DF-2FFD-4fad-8138-A37C1AEABF39}") = "тест"

strtxt=CurrentProject.AllForms("какую-нибудь форму")....
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538335
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ой извиняюсь не так. Ща. подождите.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538336
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
Private Function SetFormProperty(FormName As String, strPropertyName As String, _
                                 strProperty As String) As Boolean
    ' Add custom properties to the AccessObjectProperties
    ' collection that is associated with an AccessObject object.
On Error GoTo  999 

    With CurrentProject.AllForms(FormName)
       If Nz(.Properties(strPropertyName)) <> strProperty Then
          .Properties(strPropertyName) = strProperty
       End If
    End With
    SetFormProperty = True

ExitHere:
    Exit Function

 999 :
    If Err.Number = acErrPropertyNotFound Then
       With CurrentProject.AllForms(FormName).Properties
           .Add strPropertyName, strProperty
       End With
       Resume
    Else
       SetFormProperty = False
       Resume ExitHere
    End If

End Function

затем
 call SetFormProperty("frm", "{1187C6DF-2FFD-4fad-8138-A37C1AEABF39}", "test")
затем прочтите.

...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538337
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
acErrPropertyNotFound = 2455
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538345
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Высылаю макет формы (без кода). Ну он то должен запуститься. Затем попробуйте импортироват модули и классы.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538367
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_world
Вы тут?
Может этот шаманский код поможет :
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Public Function NewEnum() As IUnknown
    Attribute NewEnum.VB_UserMemId = - 4 
    Set NewEnum = mcolControls.[_NewEnum]
End Function

Public Function Item(ByVal varID As Variant) As ClassResizeControl
    Attribute NewEnum.VB_UserMemId =  0 
    Set Item = mcolControls(varID)
End Function
Это нужно запихнуть в модуль класса "ClassResizeForm" в текстовом редакторе (не в редакторе ВБА). Затем удалите (если уже импортировали в базу данных) из базы данных модуль "ClassResizeForm" и импортируйте отредактированный в текстовом редакторе модуль класса
Хочу докопаться в чем тут дело. У меня-то ошибок не выдает и поэтому не знаю даже где копать.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538368
ИгорьКл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
access 2003, виснет и просит пожаловаться на Любопыта дядюшке Биллу.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538370
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгорьКлaccess 2003, виснет и просит пожаловаться на Любопыта дядюшке Биллу.
Выше дал макет формы и классы в отдельных файлах. А это тоже виснет?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538372
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Этого билла убить давно пора. (убить била-3)
Это что за фокусы такие? В 2002 работает, а в 2003 уже нет. Понимаю, когда в 97 не работает.
Где же пресловутая преемственность?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538374
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скажите, может проперти_нейм у меня слишком длинное?
вот тут:
CurrentProject.AllForms("форма").Properties("{1187C6DF-2FFD-4fad-8138-A37C1AEABF39}")
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538376
ИгорьКл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛюбопытВыше дал макет формы и классы в отдельных файлах. А это тоже виснет?
Не виснет, но и неработает. Вот эти строки и многие другие покраснели.
Private WithEvents mfrm As Access.Form
Attribute mfrm.VB_VarHelpID = -1
Public Event AfterLoad(UserFactor As Variant)
Public Event AfterRescale(UserFactor As Variant)
RaiseEvent AfterLoad(decUserFactor)
Attribute NewEnum.VB_UserMemId = -4
Attribute NewEnum.VB_UserMemId = 0
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538382
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгорьКл ЛюбопытВыше дал макет формы и классы в отдельных файлах. А это тоже виснет?
Не виснет, но и неработает. Вот эти строки и многие другие покраснели.
Private WithEvents mfrm As Access.Form
Attribute mfrm.VB_VarHelpID = -1
Public Event AfterLoad(UserFactor As Variant)
Public Event AfterRescale(UserFactor As Variant)
RaiseEvent AfterLoad(decUserFactor)
Attribute NewEnum.VB_UserMemId = -4
Attribute NewEnum.VB_UserMemId = 0
Вот те на. Это же аттрибуты, сгенерированные ВБА. И теперь сам не понимает, что сгенерировал.
У вас есть работающая база с классами на 2003? Экспортируйте в файл модуль вашего класса и посмотрите какие аттрибуты она генерит. Может найдется по аналогии что исправить.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538385
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Идея!
Убейте все строчки с аттрибутами. Ведь они в редакторе ВБА не должны быть видны.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538388
ИгорьКл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Attribute mfrm.VB_VarHelpID = -1 на эту строчку пишет:
Compile error: Syntax error
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538392
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потом последних двух строчек аттрибутов у меня в классе нет. Выше давал шаманский код.
Или вот вообщем с шаманским кодом модуль класса.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538393
ИгорьКл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛюбопытУбейте все строчки с аттрибутами. Ведь они в редакторе ВБА не должны быть видны.

ЗАРАБОТАЛААААА!!!!!!!!!!!!!!!
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538394
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очень надеюсь, что ошибка из-за этих аттрибутов.
Гетц писал как дать понять ВБА, что с пользовательскими коллекциями поступать так-же как со своими. А я этого не сделал (работает, ну и пусть дальше работает, чего еще суетиться).
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538395
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгорьКл ЛюбопытУбейте все строчки с аттрибутами. Ведь они в редакторе ВБА не должны быть видны.

ЗАРАБОТАЛААААА!!!!!!!!!!!!!!!
Вах... Ну слава богу.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538399
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Теперь еще несколько штрихов.
в модуле ClassResizeForm найдите функцию SetControlOffset и сделайте его паблик.
в модуле формы:
1.добавить на уровне модуля переменную Private mblnSplitterMoved As Boolean
2. На lblSplitterY_MouseMove добавить mblnSplitterMoved = True если смещение произошло
3.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Private Sub lblSplitterY_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Call SetCursor(ctlImageList.ListImages( 1 ).Picture.Handle)
   If Button = acLeftButton Then
      mblnClickOnSplitter = True
      mblnSplitterMoved = False
   End If
End Sub

Private Sub lblSplitterY_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
   If Button = acLeftButton Then
      mblnClickOnSplitter = False
      If mblnSplitterMoved = True Then Call mrfrm.SetControlOffset(mrfrm)
   End If
End Sub
Тем самым независимо от того, что сделал пользователь со сплиттерами, код запомнит текущее положение сплиттера и восстановит при следующей загрузке. уфф.. намучился.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538426
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Любопыт
Отвлекался на некоторое время. Смотрю, у вас был интенсивный диалог с большим количеством замен. Лучше выложить окончательный рабочий вариант. Что-то лениво все подставлять
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538454
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538456
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538458
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема была в генерации ВБА аттрибутов.
Если опять не получится то вот классы в отдельном модуле, пусть сам Аксесс 2003 генерит что ему надо. При появлении ошибок и аттрибутов в редакторе ВБА убейте все аттрибуты.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538461
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да сообщите, как рабочий вариант базы заработал. Ну и вообще, что и как у вас происходило. ок?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538501
Шыфл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не работает ничего :)
Если запускаешь проект целиком, то при открытии формы или редактора VBA начинает злобно ругаться и умирать, причём второй раз уже даже не открывается, а сразу ругается. :)
Ругается и при попытке сделать импорт в пустую базу.

При составлении по схеме "формы + модули" ругается при импорте файла Form_frm1.cls Говорит мол
Access
Недопустимое имя модуля 'Form_frm1'
*Имя модуля начинается с префикса Form_ или Report_.
*Модуль не должен иметь имя Forms, Reports, Modules, Applicetion, Screen, Assistant, CommandBars, References и DoCmd.
*Слишком дленное имя модуля.

И импортирует его как Class1
Потом можно переименовать в Form_frm1, но ничего не работает. Не ресайзится... Такие дела
Access 2003
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538508
Шыфл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, что-то происходит, потому как при просмотре первой формы иногда вместо "режим формы" возникает "обработка команды". Но что-то не понятно, что меняется :-/

З.Ы. В табличных формах в правой форме при установке фокуса на First Name, Last Name уходит влево (не видно), а внизу появляется ползунок. Ни одна кнопка не работает :-/
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538671
hruptor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ЛюбопытДа сообщите, как рабочий вариант базы заработал. Ну и вообще, что и как у вас происходило. ок?

В Access 2003 SP2 всё чудесно работает :)
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538693
Фотография Palarm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538704
DiDis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Акс 2003 SP2 не работает
востановить бд пишет... в модули не заходит.. тот же самый вис
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538712
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ШыфлПри составлении по схеме "формы + модули" ругается при импорте файла Form_frm1.cls Говорит мол
Access
Недопустимое имя модуля 'Form_frm1'
*Имя модуля начинается с префикса Form_ или Report_.
*Модуль не должен иметь имя Forms, Reports, Modules, Applicetion, Screen, Assistant, CommandBars, References и DoCmd.
*Слишком дленное имя модуля.

И импортирует его как Class1
Потом можно переименовать в Form_frm1, но ничего не работает. Не ресайзится... Такие дела
Access 2003
модуль 'Form_frm1' импортировать не надо. Надо в базе создать модуль для формы frm1 (пустой), скопировать из текстового файла текст из модуля 'Form_frm1' и вставить в проект.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538722
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не могу понять, то работает
hruptorВ Access 2003 SP2 всё чудесно работает :)
то не работает
[DiDis]Акс 2003 SP2 не работает
востановить бд пишет... в модули не заходит.. тот же самый вис[/quot]
В чем-же дело?
2 hruptor
У вас сразу база заработала без импортирования классов?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538763
hruptor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Любопыт
2 hruptor
У вас сразу база заработала без импортирования классов?

Да, заработала сразу. Может быть у других не работает потому что нет файла MSCOMCTL.OCX (для ImageListCtrl). У меня этот файл версии "6.01.9545, April 25, 2002"
Проверил на Acess 2003 без SP, тоже работает :)
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538767
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hruptor Любопыт
2 hruptor
У вас сразу база заработала без импортирования классов?

Да, заработала сразу. Может быть у других не работает потому что нет файла MSCOMCTL.OCX (для ImageListCtrl). У меня этот файл версии "6.01.9545, April 25, 2002"
Проверил на Acess 2003 без SP, тоже работает :)
Ой забыл про MSCOMCTL.OCX !!!!
Спасибо, что напомнили. Это для изменения курсора на сплиттере.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538782
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, заработала сразу. Может быть у других не работает потому что нет файла MSCOMCTL.OCX (для ImageListCtrl). У меня этот файл версии "6.01.9545, April 25, 2002"
Не в этом дело. Такой файл есть, версия та же. Но не работает.

Любопыт, скажите все же, какие у вас референсы подключены?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538789
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл тэг включить авторДа, заработала сразу. Может быть у других не работает потому что нет файла MSCOMCTL.OCX (для ImageListCtrl). У меня этот файл версии "6.01.9545, April 25, 2002"Не в этом дело. Такой файл есть, версия та же. Но не работает.

Любопыт, скажите все же, какие у вас референсы подключены?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538826
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну кроме басика:
1. Microsoft Access 10.0 Object Library
файл C:\Program Files\Microsoft Office\Office10\MSACC.OLB
2. OLE Automation
файл C:\WINDOWS\system32\stdole2.tlb
3. Microsoft ActiveX Data Objects 2.1 Library, но он здесь не нужен
файл C:\Program Files\Common Files\System\ado\msado21.tlb
4. Microsoft Windows Common Controls 6.0 (SP6)
файл C:\WINDOWS\system324. MSCOMCTL.OCX
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538845
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_worldЗабыл тэг включить авторДа, заработала сразу. Может быть у других не работает потому что нет файла MSCOMCTL.OCX (для ImageListCtrl). У меня этот файл версии "6.01.9545, April 25, 2002"Не в этом дело. Такой файл есть, версия та же. Но не работает.

Любопыт, скажите все же, какие у вас референсы подключены?
Файл MSCOMCTL.OCX то есть, а вы его подключили?
А вы все не можете даже до кода добраться?
Можете попробовать следующее?
Нарисуйте или скопируйте свою формочку с контролами в новой своей базе и импортируйте классы (кроме frm) и модуль. в вашей форме (главной) вставьте код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Option Compare Database
Option Explicit
Private mrfrm As ClassResizeForm
Private Sub Form_Open(Cancel As Integer)
    Set mrfrm = New ClassResizeForm
    Set mrfrm.Form = Me
    Call mrfrm.SetDesignScreen( 1024 ,  768 ,  96 ,  96 )
' 1024 х 768, DPIX=96, DPIY=96 разрешение экрана, при котором создана форма
End Sub
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538861
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538877
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может что-то с формами не то (они у меня в процессе отладки кода самопроизвольно меняли свои свойства - помню иногда аксесс предлагал сохранить макеты форм, хотя я их не трогал). или с моим аксессом что-то не так. вообщем непонятно.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538884
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даже таблицу не даёт открыть. А если пробую импортировать - то пишет нераспозноваемый формат
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538890
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так ща попробую перерисовать формочки, табличку уберу.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538898
ИгорьКл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я закоментировал все атрибуты,
ЛюбопытОй забыл про MSCOMCTL.OCX !!!!
Спасибо, что напомнили. Это для изменения курсора на сплиттере.
закоментировал тоже
Любопытмодуль 'Form_frm1' импортировать не надо. Надо в базе создать модуль для формы frm1 (пустой), скопировать из текстового файла текст из модуля 'Form_frm1' и вставить в проект.
так и сделал
Работает идеально (уменьшает и увеличивает), о чём я сообщил 20.05.07, 21:14
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538921
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да Любопыт. Дело именно в MSCOMCTL.OCX. После установки ее в референсах файл стал загружаться нормально. Помнится еще в одном из первых постов я просил вас разобраться со ссылками. Вы ответили: "Библиотеки никакие не нужны. Разве что АПИ-функции". Ну да это дело прошлое. Все-таки победили...
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538924
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так. ДЕло не в формах. Бросаю эту затею с рисовкой.
Дело в генерации аттрибутов. Что делать с этим не знаю. Не будешь же всем говорить уберите аттрибуты.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538931
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_worldДа Любопыт. Дело именно в MSCOMCTL.OCX. После установки ее в референсах файл стал загружаться нормально. Помнится еще в одном из первых постов я просил вас разобраться со ссылками. Вы ответили: "Библиотеки никакие не нужны. Разве что АПИ-функции". Ну да это дело прошлое. Все-таки победили...
Дык запыл про MSCOMCTL.OCX, имидж-лист не виден же на форме, вот и забыл. Кстати,
а вы базу запустили или тоже импортировали классы и аттрибуты убрали?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538933
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Bykis
Зарегистрируйте MSCOMCTL.OCX: revsvr32 "C:\Windows\System32\MSCOMCTL.OCX", а потом создайте чистый мдб, создайте пустой модуль, подключите в референсах MS Windows Common Control, скопируйте в новый мдб все из файла Любопыта. И все пойдет
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538936
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно, у меня в референсах MSCOMCTL.OCX нет, но работает. Правда в других базах поднимается MSCOMCTL.OCX. Получается, что раз запустил, дальше можно и не упоминать на конкретной машине.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538948
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_world2 Bykis
Зарегистрируйте MSCOMCTL.OCX: revsvr32 "C:\Windows\System32\MSCOMCTL.OCX", а потом создайте чистый мдб, создайте пустой модуль, подключите в референсах MS Windows Common Control, скопируйте в новый мдб все из файла Любопыта. И все пойдет

2 Любопыт. Я ответил
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538962
Фотография ruprext
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_world2 Bykis
Зарегистрируйте MSCOMCTL.OCX: re G svr32 "C:\Windows\System32\MSCOMCTL.OCX", а потом создайте чистый мдб, создайте пустой модуль, подключите в референсах MS Windows Common Control, скопируйте в новый мдб все из файла Любопыта. И все пойдет
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538963
Фотография ruprext
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ачипятка видимо
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538982
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Она у меня стояла... Может региональные настройки? Дома поппробую на русском.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538986
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ruprextачипятка видимоОх, как вы правы...
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34538990
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ByKiSОна у меня стояла... Может региональные настройки? Дома поппробую на русском.
Кажется, там есть контролы с русскими названиями. Лучше нарисуйте собственную форму, импортируйте модули классов и 1 стандартный модуль. Код на форму посмотрите как сделано в моем (он короткий не бойтесь).
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34539302
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для тех кто пробует, оставьте сообщение : работает или нет и версию Аксесса.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34539333
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Работает нормально. Заметно сильное моргание при двигании субформ. Думаю, что это не страшно, пользователь не будет постоянно дергать формы.

Из пожеланий. Если будете этим заниматься и дальше, то самое интересное, во всяком случае для меня, это изменение размеров фотографий и подобных объектов.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34539396
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_worldизменение размеров фотографий и подобных объектов.
Это уже слишком сложно по-крайней мере для меня.
С морганием тоже не знаю как бороться.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34545740
Fagrant
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скачал монстра GetzResizeFormNewSaveCoords0520, открыть не смог. Падает Эксцесс при любом чихе. Импорт - тоже не работает. MSComctl 6.0(SP6) в референсах у меня подключен, MSA2003 SP2. А хочется :)
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34545835
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте так.
1.Создайте свою чистую базу на MS2003.
2.Импортируйте из приложенного файла следующее:
ModuleScreenInfo.bas
ClassResizeControl.cls
ClassResizeForm.cls
3. Тут два пути: а) создаете свой макет формы
б) копируете все формы из приложенного файла мдб.
4. Код на форму скопируйте ( не импортировать ) из файла Form_frm1.cls
Должно сработать.

З.Ы. Код доработан несколько (исправлены незначительные ошибки, корректнее отрабатывается высота секции 0).
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34546142
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже это у меня что-то с Аксессом.
Попытался декомпилировать - упорно выдавал ошибку с предложением отправить весточку в мсф.
Не знаю как, но вообщем в процессе манипуляций с выгрузкой проекта и загрузкой в новый файл добился таки стабильной декомпиляции. А вот еще что: в именах проперти у CurrentProject.AllForms(strFormName).Properties использовал гуид... вообщем заменил на обычные короткие имена. (может и из-за этого).
Попробуйте этот вариант.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34546144
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552741
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По мойму он всётаки столбцы в листбоксах гадит... (на весь листбокс растягивает первый столбец).
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552742
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я вовремя :))
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552744
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ByKiSПо мойму он всётаки столбцы в листбоксах гадит... (на весь листбокс растягивает первый столбец).
Так и задумано. Масштабирует все столбцы.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552746
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так все-таки у вас заработало... Последний вариант? Проблемы были какие-нибудь?
Жду затаив дыхание
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552755
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Плохо задумано :)
В листобксе три столбца, а ваша штука показывает только 1. На картинке сверху как было, снизу - как стало... Неудобно.

Последний вариант не с литовскими настройками работает.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552756
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ой
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552761
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вы не можете свой макет скинуть? Я буду посмареть.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552775
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552776
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552782
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ширины колонок в примере, котором вы выслали не задали.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552783
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот результат масштабирования на 1280 х 1024
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552786
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да задал я! Только при ресайзе, он их сбивает у меня... если так не должно быть - буду в понедельник посмотреть ;)))
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34552789
Любопыт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ByKiSДа задал я! Только при ресайзе, он их сбивает у меня... если так не должно быть - буду в понедельник посмотреть ;)))
При ресайзе пропорционально изменяются ширины колонок.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34554453
ByKiS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да. Действительно. Приношу извенения за наезд :) , с литовскими настройками, если указать ширины в пикселях - всё отлично работает.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34721118
Максойд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все уловил, реализовал в своей БД, одного не понял, для чего этот код

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
Private Sub Form_Open(Cancel As Integer)
    mtime = Timer
    Set mrfrm = New ClassResizeForm
    Set mrfrm.Form = Me
    Call mrfrm.SetDesignScreen( 1024 ,  768 ,  96 ,  96 )

    mdecscale =  1 
    mrfrm.Controls("cmdClose").FloatIt = cfRight
    mrfrm.Controls("cmd_Close").FloatIt = cfRight
    mrfrm.Controls("cboBox").SizeIt = czRight

    mrfrm.Controls("lblPage1").SizeIt = czRight
    With mrfrm.Controls("frm1sub1")
       .SizeIt = czBottom
       .SaveIt = True
    End With
    With mrfrm.Controls("lblSplitterY")
       .SizeIt = czBottom
       .SaveIt = True
    End With
    With mrfrm.Controls("frm1sub2")
       .SizeIt = czBoth
       .SaveIt = True
    End With

    mrfrm.Controls("frm1sub3").SizeIt = czBoth
    mrfrm.Controls("tab").SizeIt = czBoth
    mrfrm.Controls("lst").SizeIt = czBottom
    mrfrm.Controls("Pic").FloatIt = cfBottom
    mrfrm.Controls("frm1sub4").Rfrm.Controls("frm1sub4sub").SizeIt = cfRight
    mrfrm.Controls("frm1sub4").Rfrm.Controls("cboBox").SizeIt = cfRight

End Sub

Ведь все работает и при таком коде
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Private Sub Form_Open(Cancel As Integer)
    
    mtime = Timer
    Set mrfrm = New ClassResizeForm
    Set mrfrm.Form = Me
    
    Call mrfrm.SetDesignScreen( 1024 ,  768 ,  93 ,  93 )
    mdecscale =  1 
       
    With mrfrm.Controls("F_Zakup_Slave")
       .SizeIt = czBottom
       .SaveIt = True
    End With
   
End Sub
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34721151
mcgrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дело в том, что в этом коде нет класса TagedValues, поэтому каждый контрол, который нужно перемещать или ресайзить (не путать с масштабированием!) при изменении размеров формы, нужно прописать его свойства в коде.
FloatIt = (cfRight/cfBottom/cfBoth) - перемещение
SizeIt = (czRight/czBottom/czBoth) - изменение размеров.
Могу выложить с классом TagedValues (очень удобно, не нужно в коде прописывать, свойства прописываете в свойствах контрола (дополнительные сведения ))
в доп.сведениях можно прописать: FloatIt=Bottom;SizeIt=Right , например.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34721259
mcgrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот выкладываю с классом TagedValues
в доп.сведениях контрола можно прописать:
FloatIt = (Right/Bottom/Both) - перемещение
SizeIt = (Right/Bottom/Both) - изменение размеров.
ниже дан код, запоминающий текущие координаты и размеры формы,
а также положение сплиттера. при следующем запуске формы форма откроется с этими координатами и размерами и положением сплиттера.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Private Sub Form_Unload(Cancel As Integer)
    ' вызов mrfrm.Clear обязателен для запоминания всех координат
    Call mrfrm.Clear
    Set mrfrm = Nothing
End Sub

Private Sub Form_Open(Cancel As Integer)
    Set mrfrm = New ClassResizeForm
    Set mrfrm.Form = Me
    Call mrfrm.SetDesignScreen( 1024 ,  768 ,  96 ,  96 )
    mrfrm.SaveCoords = True
    ' запоминаем координаты сплиттера и подформ (fsub1 и fsub2),
    ' размеры которых зависят от положения сплиттера
    mrfrm.Controls("fsub1").SaveIt = True
    mrfrm.Controls("lblSplitterY").SaveIt = True
    mrfrm.Controls("fsub2").SaveIt = True
End Sub
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34721260
mcgrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34721448
Максойд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сейчас не дома, база здесь нет, чтобы проверить. Просто вчера столкнулся с такой ситуацией, что шрифт в надписе, которые вставлял в форму почему то не изменял свои размеры пропорциоанльно остальным элементам. Видимо нужно было как раз прописать sizeIT для надписи. Правильно мыслю?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34721496
mcgrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МаксойдСейчас не дома, база здесь нет, чтобы проверить. Просто вчера столкнулся с такой ситуацией, что шрифт в надписе, которые вставлял в форму почему то не изменял свои размеры пропорциоанльно остальным элементам. Видимо нужно было как раз прописать sizeIT для надписи. Правильно мыслю?
странно, шрифт должен масштабироваться при изменении масштаба .
SizeIt - изменяет размеры контрола при изменении пользователем размеров формы (при ресайзинге ). Если вы пропишите для надписи SizeIt=Right, то при растягивании формы изменится ширина надписи.
Не путайте масштабирование с ресайзингом. Масштабирование здесь имеется в виду пропорциональное изменение всех размеров всех контролов на форме и самой формы, ресайзинг - изменение размеров определенного(ых) контрола (не обязательно всех контролов), размер шрифта при ресайзинге НЕ изменяется.
Пример ресайза: пользователь тянет за нижний угол формы вправо и вниз, форма растягивается контрол следует за нижним правым углом (FloatIt=Both) или изменяется по ширине (SizeIt=Right) и т.д.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34722240
Максойд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2mcgrow: не знаю, у меня половина элементов ресайзится, а половина нет. Причем ресайз в плюс идет правильно, а при уменьшении пропорции нарушаются, т.е. размер шрифта в полях и надписях не уменьшается и соответствено нарушаются все пропорции в форме с наложением одних полей на другие. Как пример выкладываю свою БД.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34722241
Максойд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34722242
Максойд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34722417
mcgrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максойд2mcgrow: не знаю, у меня половина элементов ресайзится, а половина нет. Причем ресайз в плюс идет правильно, а при уменьшении пропорции нарушаются, т.е. размер шрифта в полях и надписях не уменьшается и соответствено нарушаются все пропорции в форме с наложением одних полей на другие. Как пример выкладываю свою БД.
Есть такое дело. Дело в том, что не все шрифты масштабируются. В основном масштабируются только шрифты True Type. Остальные нет, увы. Поэтому пользуйтесь системными шрифтами True Type.
Потом позволю себе дать вам совет : Всегда на формах (не только с применением классов или функций масштабирования) место для надписей оставляйте всегда с некоторым запасом. Обратите внимание, что даже если вы не применяете масштабирование на разных разрешениях монитора надписи занимают разную длину, это заметно особенно при выводе на печать (откройте отчет в режиме конструктора, создайте какой-нибудь элемент с надписью и границами и оставьте место под надпись "впритык". затем откройте отчет на просмотр и посмотрите как разместился текст относительно границ элемента). Дело в том, что шрифты (и по-моему не только шрифты) не совсем WYSIWYG (What You See Is What You Get) и они не всегда правильно масштабируются (точнее всегда масштабируются приблизительно). И это не проблема Аксесса это связано с самой системой шрифтов (на первых операционных системах виндоузов Windows 1 - 3.1 c шрифтами было еще хуже). Обратите внимание на тексты в других программах, созданных для Виндоуз, там все та-же проблема.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34722426
mcgrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще: в программе не предусмотрено масштабирование не-аксессовских элементов. элементы ActiveX, например, не масштабируются программой или масштабируются не совсем корректно (у меня тривью совсем не масштабируется). Программа будет пытаться масштабировать такие элементы как обычный контрол аксесса.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34722437
Максойд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Отличный совет. Исправил шрифты на True Type - масштабирование заработало корректно!
Спасибо еще раз. А вот с элементом Календарь - не знаю что делать, он вне законов этой вселенной (
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34722442
mcgrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МаксойдОтличный совет. Исправил шрифты на True Type - масштабирование заработало корректно!
Спасибо еще раз. А вот с элементом Календарь - не знаю что делать, он вне законов этой вселенной (
Если вам это очень нужно, то напишите свой календарь (или используйте календарь на базе Аксесса их тут на форуме (календарей) тьма-тьмущая. Кстати у Гетца есть календарик очень похожий на тот, что у вас на форме.
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #34722928
Максойд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2msgrou: Да я бы использовал сторонние календари, но не знаю как к ним обратиться, чтобы решить эту проблему http://]http://sql.ru/forum/actualthread.aspx?tid=461108
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #35453525
YkovSerg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня все работает. Access 2007. Даже самый первый вариант.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #36749730
toolbar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос тем, кто пробовал этот вариант ресайзинга:

Тулбар ресайзится?
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #37210684
Alex Pancho
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Классный монстр! Спасибо!
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #37453013
Кхе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
toolbar,
Если про ActiveX - нет


Кто нибудь смотрел ресайз элементов саб.форм, в коде есть
Код: plaintext
1.
    mrfrm.Controls("frm1sub4").Rfrm.Controls("frm1sub4sub").SizeIt = cfRight
    mrfrm.Controls("frm1sub4").Rfrm.Controls("cboBox").SizeIt = cfRight
, но в самом примере, ресайза не получается, или так только у меня?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #39879939
larusso
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый всем участникам этого топика
уже не первый день бьюсь над использованием этого ресайза, но только при условии, что параметры окон документа не "перекрывание окон", а "вкладки"
а вот при вкладках ресайзинг идет не корректно....
например - контролы "наезжают" друг на друга. или сжимаются в одну тоненькую полосочку.
может кто пробывал - как это лечится?
в качестве примера выкладываю уже обсужденную базу, но с отражением с вкладками
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #39879940
larusso
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #39880088
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
larusso, зачем всё это? у Access 2007 и далее есть встроенная привязка контролов
...
Рейтинг: 0 / 0
Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
    #39880102
larusso
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панургlarusso, зачем всё это? у Access 2007 и далее есть встроенная привязка контролов

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

я не исключаю, что может есть и какое то другое решение, чем обсуждаемое.
но я на просторах интернета не нашел ничего подходящего....
есть примеры очень простых решений. но это как то не то...(((
...
Рейтинг: 0 / 0
114 сообщений из 114, показаны все 5 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Выкладываю монстра (по размерам кода) Масштабирование и ресайзинг форм.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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