Отправляет email-рассылки с помощью сервиса Sendsay

[prg] Visual Studio и размещение элементов на форме

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

Ответить   Tue, 10 Jul 2018 09:23:15 +0300 (#3572830)

 

Ответы:

Приветствую.

У элементов обычно есть такие свойства как height и width, которые
позволяют вычислить их размер и соответственно рас читать чтобы элементы
друг на друга не наползали.

Кроме того, существуют различные компоновщики, к примеру FlowLayoutPanel
https://docs.microsoft.com/ru-ru/dotnet/framework/winforms/controls/flowlayoutpanel-control-windows-forms

который позволяет автоматически упорядочить размещенные в нем элементы

в определенном направлении.

С уважением, Константин.

Ответить   Tue, 10 Jul 2018 11:29:06 +0300 (#3572856)

 

Vande omentaina, Keeper!

Я для себя пытаюсь решить этот вопрос уже который год. В результате
пока останавливаюсь на решениях, не требующих ручного расчёта
координат. В частности, если речь о WindowsForms, то там есть
элементы
управления TableLayoutPanel и FlowLayoutPanel. Там надо достаточно
хорошо покурить документацию, но в итоге у вас может получиться вполне
неплохой дизайн без этой ужасной необходимости считать координатки
вручную.
Вообще идеально с этим, на мой взгляд, справляется WXWidgets. Я его
использовал только на Питоне (WXPython), но на том же C++ должно быть
всё очень похоже, ведь это, что называется, оригинал. Там есть так
называемые сайзеры (sizers), которые помогают располагать элементы
вертикально и горизонтально и к тому же могут быть вложенными друг в
друга.

Ответить   Tue, 10 Jul 2018 11:38:39 +0300 (#3572857)

 

здравствуйте.

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

понять бы как хотябы частично решить эту проблему.

Ответить   Wed, 11 Jul 2018 12:47:29 +0400 (#3573063)

 

<< понять бы как хотябы частично решить эту проблему.
Ну как частично решить вам уже ответили: пользуйтесь стандартными
компоновщиками, которые присутствуют в любой уважающей себя библиотеке,
будь то qt или swing или какая другая. Чаще всего есть горизонтальный
компоновщик , вертикальный и табличный. Swing в частности предоставляет еще
1 тип компоновки, рассчитанный на 5 элементов в окне: в центре, справа,
слева, внизу. Много берут на себя рутинной работы, так что удобны и зрячим
тоже. Например, не надо рассчитывать координаты при изменении размеров окна
и т.п.

Ответить   Wed, 11 Jul 2018 22:44:23 +0300 (#3573083)