Я создаю приложение на VB6, где стандартный размер формы составляет 1024x768 для старых мониторов, которые его увидят. Однако некоторым пользователям будут доступны более высокие разрешения, и я бы хотел, чтобы программа по-прежнему выглядела красиво, когда они максимизируют экран. Я вообще не хочу изменять размер элементов в форме, но я хочу все центрировать. Есть два варианта, как я вижу, и мне не очень нравится ни один из них:
- _Настоящий_ способ, написание динамического кода, который будет размещать каждый элемент в форме по отношению к другим элементам, так что независимо от его размера, они всегда будут центрироваться должным образом.
- Более простой, но более простой способ — поместить все элементы в PictureBox размером 1024x768 и просто центрировать его на экране при изменении размера формы.
Мне не нравится первый, потому что тьфу, и я не люблю второй, потому что это такое специальное решение. Кроме того, хотя мне больше нравится идея, лежащая в основе первого, у него есть проблема постоянства: если мне нужно вернуться и изменить некоторые элементы, я тогда застряну, переписывая много кода для изменения положения. И у второго есть своего рода аналогичная проблема, из-за которой я потерял бы одну из приятных вещей, которые предоставляет VB6: возможность видеть структуру сетки формы.
Кто-нибудь знает какие-нибудь волшебные решения?
В настоящее время я склоняюсь к PictureBox, просто потому, что перспектива написания и, несомненно, переписывания всего этого кода позиционирования угнетает. Проблема здесь в том, что у меня уже есть эти 50+ элементов в форме, но мне нужно, чтобы они были в PictureBox. Я могу копировать и вставлять без создания массива, который он всегда хочет создать, но тогда мне придется пройти через переименование их всех... так что мой второй вопрос, есть ли какой-нибудь простой способ передать уже существующий элемент в превратиться в PictureBox?
Всем спасибо!