Доступ к скриптам и формам закрыт. Но есть возможность вносить коррективы "налету", во время выполнения скриптов, добавленных позднее.
Выкручиваюсь как могу:
- Код: Выделить всё
UserForm1.Caption = "Это моя форма"
UserForm1.Width = 150 'должно автоматически подгоняться под Caption
UserForm1.CommandButton1.Caption = "Закрыть"
UserForm1.CommandButton1.AutoSize = True
UserForm1.CommandButton1.Top = UserForm1.InsideHeight - UserForm1.CommandButton1.Height - 2 'Я идиот! Убейте меня, кто-нибудь!
UserForm1.CommandButton1.Left = UserForm1.InsideWidth - UserForm1.CommandButton1.Width - 2 'Я идиот! Убейте меня, кто-нибудь!
UserForm1.Show
Здесь UserForm1 (взята для примера) - компонент закрытого проекта.
Нужно:
- Автоматически подгонять ширину формы так, чтобы строка Caption отображалась полостью. При разных настройках системы (например в зависимости от выбранной темы оформления) ширина одной и той же строки получается разная. Ширина символов тоже разная: строка из 5 символов "ШШШШШ" почти в 3 раза длиннее, чем "lllll". Так что просто умножить количество символов на константу - не вариант.
- В последних строчках кнопка сдвигается точно в правый нижний угол. Смотрится это как-то некрасиво. По-этому делаю отступ "2". Но это число взято "от балды"... И в зависимости от настроек смотрится по-разному. Надо подставить что-то "более правильное". Например на одно деление сетки, по которой выравниваются элементы при ручной расстановке. Но где это число взять?