Re: Облегчение программинга GUI-приложений взамен на ...
Posted: Sat Apr 18, 2009 12:34 pm
Вставлю свои 5 копеек:
В идеале заголовок окна должен быть контейнером любого содержимого, в котором изначально находятся 3 кнопки: изменение размера окна, закрытие и вопросик. Далее прогер должен иметь возможность кидать туда объекты(картинки/текст) и вешать на них (объекты) обработчики. Тогда будет наиболее оптимальный интерфейс со вкладкми и т.п. Просто при инициализации удаляются ненужные элементы и вставляются свои.
В итоге для кодера появляются 2поля для действий: сама прогерская часть как доступно сейчаси и заголовочная, фон и высота которой задается скином.
Также желательно хранить флаг Drag&Drop для возможности перетаскивания объектов. И у кажого объекта сходный флаг(для возможности создания закрепленных объектов.)
Обработчики:
Клики всевозможные, кнопка нажатая, перетаскивание.
D&D
Скроллинг(тоже флагами)
изменение размеров самой панели.
Также при данном типе окна координаты всех объектов должны задаваться 2 способами(по выбору). В процентах(или дроби) и в пикселях. Это позволит делать для многих элементов ресайз авоматом.
А насчет пересчета координат - можно как в винде иметь где-то сохраннную переменую с высотой заголовка.
В идеале заголовок окна должен быть контейнером любого содержимого, в котором изначально находятся 3 кнопки: изменение размера окна, закрытие и вопросик. Далее прогер должен иметь возможность кидать туда объекты(картинки/текст) и вешать на них (объекты) обработчики. Тогда будет наиболее оптимальный интерфейс со вкладкми и т.п. Просто при инициализации удаляются ненужные элементы и вставляются свои.
В итоге для кодера появляются 2поля для действий: сама прогерская часть как доступно сейчаси и заголовочная, фон и высота которой задается скином.
Также желательно хранить флаг Drag&Drop для возможности перетаскивания объектов. И у кажого объекта сходный флаг(для возможности создания закрепленных объектов.)
Обработчики:
Клики всевозможные, кнопка нажатая, перетаскивание.
D&D
Скроллинг(тоже флагами)
изменение размеров самой панели.
Также при данном типе окна координаты всех объектов должны задаваться 2 способами(по выбору). В процентах(или дроби) и в пикселях. Это позволит делать для многих элементов ресайз авоматом.
А насчет пересчета координат - можно как в винде иметь где-то сохраннную переменую с высотой заголовка.