|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Как сделать не допотопный интерфейс? Избавляюсь от всякого рода "менюшек", и прочих архаичностей. Но при использовании стандартных контролов VS.NET интерфейс всё равно получается а-ля 90-е. Пытаюсь писать свои кнопки, чекбоксы. Но беда в том, что, напр., в том же чекбоксе нельзя (вернее, как?) сделать галочку, выступающую за пределы чекбокса. Или кнопку, у которой справа не вертикальная сторона, а треугольный выступ вправо, которым можно упереться в какой-нибудь грид и т.п. Т.е. контролы не прямоугольные, а произвольной формы.. То же выравнивание.. рисую три кнопки или три грида на форме слева направо. И при изменении размеров экрана приходится в sizechanged прописывать равномерное изменение их ширин. И при этом они моргают безбожно. Да та же студия - там изменение ширины панели тоже сделано как в 90-х: беру за границу панели properties, начинаю расширять - и вместо того, чтобы расширяться, под указателем мыши появляется какая-то чёрная жуткая вертикальная полоса, которая обозначает, какой ширины будет панелька после того, как мышку отпустишь. Вроде, WPF подходит - но такое ощущение, что он вообще заброшен майкрософтом и не совершенствуется. Не изменяется от версии к версии. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2015, 14:14 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Nika gnome, 1) Если речь о бизнес-приложениях, то ко всяким украшательствам следует подходить очень осторожно 2) WPF живет, пока иных технологий под Desktop не представляли 3) Могу посоветовать для большей красоты использовать сторонние библиотеки компонентов. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2015, 14:26 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Nika gnome, суть фреймворков в том и заключается, что все приложения написанные под этот фреймворк, похожи друг на друга. И поэтому пользователям легко в них работать: привыкнув к одному, легко пользоваться и другими. А вот когда дизигнеры начинают заниматься украшательствами, когда программеры начинают менять способы ввода... Пользователи потом оправдываются: "Оно само, я ничего не нажимала!" Тем не менее, можно и в WinForms создавать элементы произвольной формы: круглые, треугольные, какие угодно. Можно и у чекбокса сделать выступающую за пределы галочку. Но рисовать придётся вручную, с использованием Graphics, Region, etc. Пример создания круглой кнопки. Заброшен наоборот Windows Forms, а WPF цветёт и пахнет. Был небольшой период, когда в WPF не вносились изменения, но в последнее время дело пошло. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2015, 14:42 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Nika gnome, пытаться делать это в WF, всё равно, что ежиков рожать :) переходите на WPF, там галочку о которой вы говорите можно за 5 минут сделать, не прилагая особых усилий, чисто декларативно, без всякой писанины кода для рендеринга. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2015, 17:07 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Nika gnomeКак сделать не допотопный интерфейс? Забудьте про галочки. Выступающие, впадающие - про любые. Чтобы сделать не допотопный интерфейс - надо быть в теме. Как UI так и UX. И WPF подходит для этого лучше чем кто либо. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2015, 17:40 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
да, согласна с вами. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2015, 18:12 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Nika gnome, Нормальный современный интерфейс - это тот который всегда соответствует стилю операционной системы на которую прога установлена, будь то XP или Win 8.1. С WinForm, если не использовать всякие стрипы, это как раз очень даже возможно, т.к. в основе большинства контролов лежат таки Common Controls (WIN 32 API). А вот насчет WPF я как то очень сомневаюсь в универсальности, хотя судить не берусь ибо с ним не работал. Т.е. круглую кнопку вы м.б. и наваяете, только это будет петушинный интерфейс а не "современный". ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2015, 01:22 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Дмитрий77Nika gnome, Нормальный современный интерфейс - это тот который всегда соответствует стилю операционной системы на которую прога установлена, будь то XP или Win 8.1. С WinForm, если не использовать всякие стрипы, это как раз очень даже возможно, т.к. в основе большинства контролов лежат таки Common Controls (WIN 32 API). А вот насчет WPF я как то очень сомневаюсь в универсальности, хотя судить не берусь ибо с ним не работал. Т.е. круглую кнопку вы м.б. и наваяете, только это будет петушинный интерфейс а не "современный".ну вот не надо фигню пороть. Что интерфейс получился удобным и не петушиным, его должен делать не программист, а дизайнер и всё тогда будет нормально. В плане кастомизации WPF универсален более чем WF, это неоспоримый факт, то, что делается в WF со скрипом в WPF делается практически мгновенно. + Анимация, а анимация это не пустой звук, она расширяет возможности визуализации, например визуализацию событий в интерфейсе и многое другое. Делает интерфейс плавным и понятным. В WF чтоб сделать анимацию нужно очень много возьни. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2015, 09:46 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Roman MejtesДмитрий77Nika gnome, Нормальный современный интерфейс - это тот который всегда соответствует стилю операционной системы на которую прога установлена, будь то XP или Win 8.1. С WinForm, если не использовать всякие стрипы, это как раз очень даже возможно, т.к. в основе большинства контролов лежат таки Common Controls (WIN 32 API). А вот насчет WPF я как то очень сомневаюсь в универсальности, хотя судить не берусь ибо с ним не работал. Т.е. круглую кнопку вы м.б. и наваяете, только это будет петушинный интерфейс а не "современный".ну вот не надо фигню пороть. Что интерфейс получился удобным и не петушиным, его должен делать не программист, а дизайнер и всё тогда будет нормально. В плане кастомизации WPF универсален более чем WF, это неоспоримый факт, то, что делается в WF со скрипом в WPF делается практически мгновенно. + Анимация, а анимация это не пустой звук, она расширяет возможности визуализации, например визуализацию событий в интерфейсе и многое другое. Делает интерфейс плавным и понятным. В WF чтоб сделать анимацию нужно очень много возьни. При всем при том, что с дифирамбами в адрес WPF я согласен, когда речь идет о бизнес-приложении, на фига там анимация? И прочие украшательства? Чем интерфейс отзывчивее, тем лучше. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2015, 09:51 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Arm79При всем при том, что с дифирамбами в адрес WPF я согласен, когда речь идет о бизнес-приложении, на фига там анимация? И прочие украшательства? Чем интерфейс отзывчивее, тем лучше. Как я вижу, возможности WPF полностью поглощают в себе возможности WF. Т.е. я хочу сказать, что всё, что можно сделать в WF, можно сделать и в WPF, но не наоборот. Скажем, те же самые столбцы, которые в WPF можно равномерно растягивать и сжимать, в WF приходится писать самой в sizechanged. В WPF действительно высокая интерактивность интерфейса - надписи в зависимости от ситуации меняются с помощью привязок, а не с помощью кода. Прорисовка компонентов гораздо быстрее. + возможность (при необходимости) кастомизации интерфейса - приложение может полностью соблюдать корпоративный стиль, если в этом есть необходимость. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2015, 10:24 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Nika gnome, есть и слабые стороны, например, WPF очень тяжело работает с большим количеством объект. Если разместить к примеру 10000 объектов на форме лаги будут очень сильные. Правда думаю на WF они тоже будут не слабые :) кто то скажет, что мол это не нормально и я соглашусь, 10000 объектов надо виртуализировать :) но вот пример: есть таблица 100 столбцов, 100 строк, 10000 ячеек, каждая ячейка 25x25 пикселей. очень тяжело такое заходит. В новых версиях обещали, что количество объектов в визуальном дереве для всех встроенных элементов будет меньше или к примеру в FW4.0 панель виртуализации сделана индусами, в 4.5 вышла новая более прокаченая версия ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2015, 10:40 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
что скасается грида - я тут свой сделала, который обычными линиями всё рисует в onpaint. Да, 10 столбцов и 1000 строк - это рядовой случай. Поэтому вообще не понимаю, как можно пользоваться гридами, где каждая ячейка (зачем-то) отдельный объект. Вроде как супер-настраиваемо получается, но по факту ячейки даже не объединить в том же DataGridView. И поскольку мой компонент пулей летает, да ещё и результат запроса MDX из OLAP в себя выгружает и в виде дерева показывает, я его FastGrid назвала)) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2015, 11:16 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Nika gnomeчто скасается грида - я тут свой сделала, который обычными линиями всё рисует в onpaint. Да, 10 столбцов и 1000 строк - это рядовой случай. Поэтому вообще не понимаю, как можно пользоваться гридами, где каждая ячейка (зачем-то) отдельный объект. Вроде как супер-настраиваемо получается, но по факту ячейки даже не объединить в том же DataGridView. И поскольку мой компонент пулей летает, да ещё и результат запроса MDX из OLAP в себя выгружает и в виде дерева показывает, я его FastGrid назвала)) =) Ну в WPF у базового класса UIElement есть метод OnRender, который по сути является тем же OnPaint в WinForms, можно спокойно переопределить его и так же нарисовать всё, что душе угодно :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2015, 11:34 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2015, 01:06 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2015, 01:18 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Nika gnomeДа, 10 столбцов и 1000 строк Ужас. Бедные пользователи ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2015, 17:17 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Cat2Nika gnomeДа, 10 столбцов и 1000 строк Ужас. Бедные пользователи всего 1000, а столько эмоций ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2015, 17:25 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
ИзопропилCat2пропущено... Ужас. Бедные пользователи всего 1000, а столько эмоций они сами указывают период для просмотра (данных может быть от 100 строк до нескольких тысяч строк), выгружают в excel и там при необходимости делают с этими данными всё, что хотят. столбцы скрываемые. Если все показать, то там их под 30 у меня (в принципе, как и в проводнике Windows) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2015, 10:02 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Nika gnomeчто касается грида - я тут свой сделала, который обычными линиями всё рисует в onpaint. Да, 10 столбцов и 1000 строк - это рядовой случай. Поэтому вообще не понимаю, как можно пользоваться гридами, где каждая ячейка (зачем-то) отдельный объект. Вроде как супер-настраиваемо получается, но по факту ячейки даже не объединить в том же DataGridView. И поскольку мой компонент пулей летает, да ещё и результат запроса MDX из OLAP в себя выгружает и в виде дерева показывает, я его FastGrid назвала)) любой грид делается так же просто как сделан DataGrid, который по сути своей является компоновкой 3 ItemsControl'ами + каждая строка является им же. Вот и вся компоновка, размер каждой ячейки можно задать с помощью RowSpan, ColumnSpan, и использовать соответствующие панели для отображения. Сделать сам Grid не слишком большая проблема. Но этот вариант подходит только если на экране будут отображаться не более 1000 объектов. На 10000 такой подход избыточен, лучше использовать виртуализацию и всё будет работать так же быстро. Если вы делайте такие объекты, как мне кажется, лучше пользоваться WPF, там возможности Rendering'а на много круче, а WPF контролы просто встраивать в WF приложение. Проблем с этим нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2015, 10:10 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Не архаичный, а винтажный ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2015, 18:25 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
WPF пипец убожество. Кстати, все говорили мол это что-то новое после винформс, а в итоге похоже винформс его пережил. WPF мертво. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2015, 12:01 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
Дикий БиллWPF пипец убожество. Кстати, все говорили мол это что-то новое после винформс, а в итоге похоже винформс его пережил. WPF мертво. Неправда, мертв не сам WPF, а .NET не оправдал надежд, и все связанные с ним технологии. Для энтерпрайза он еще пойдет, но коробочный софт пишут на C++ и MFC. Если тс хочешь разрабатывать качественный, современный UI, надо переезжать на C++ и начинать изучать что-то типа Professional GUI for professional applications А про всякие, менаджмент прокладки надо забыть, оставьте их женщинам. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2015, 18:24 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
EoltЕсли тс хочешь разрабатывать качественный, современный UI, надо переезжать на C++ и начинать изучать что-то типа Professional GUI for professional applications Глянул. Умилило: "Visual Studio-like docking panes". Тащем-та, гуй VS написан на WPF. Хотя, справедливости ради, я наваяю его на чём угодно, хоть WinForms, хоть чистый WinAPI. Вопрос в трудозатратах. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2015, 19:19 |
|
Пишу программу. Получается архаичный интерфейс
|
|||
---|---|---|---|
#18+
petalvikEoltЕсли тс хочешь разрабатывать качественный, современный UI, надо переезжать на C++ и начинать изучать что-то типа Professional GUI for professional applications Глянул. Умилило: "Visual Studio-like docking panes". Тащем-та, гуй VS написан на WPF. Хотя, справедливости ради, я наваяю его на чём угодно, хоть WinForms, хоть чистый WinAPI. Вопрос в трудозатратах. Что-то я не верю, что кто-то в трезвом рассудке будет писать студию под .NET, в таком случае ей потребуется наверное i7 и гигов 16 оперативки чтобы хоть как-то шевелиться)) Dependency walker подтвержает эту мысль, основные файлы студии - это неуправляемый код со ссылкой на С++ рантайм. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2015, 19:49 |
|
|
start [/forum/topic.php?fid=20&fpage=82&tid=1401440]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 144ms |
0 / 0 |