Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » создание интерфейса (пользователя) прикладной программы(GUI)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5

Открыть новую тему     Написать ответ в эту тему

akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ссылки по теме
 
http://usability.ru/
самый известный в рунете ресурс, серьезный подход, масса информации
 
http://www.info-system.ru
Раздел "Интерфейс" представляет информацию по проектированию и разработке пользовательского интерфейса к программным продуктам.
 
http://www.uibook1.ru/
Книга по проектированию интерфейса приложений (pdf)
 
MSDN по теме:
http://msdn.microsoft.com/library/en-us/dnwue/html/ch14e.asp
точные (в пикселах, размеры кнопок и прочих контролов для визуального проектирования)
 
---
просьба делать все аккуратно и однообразно: ссылка/краткое описание
-akaGM

 
 
 
***************************************************************************
 
хочу создать тему для обсуждения...
 
т.к. сам не специалист (в активе только два GUI под dos на Turbo- и SuperVision) , но по долгу службы встала такая проблема, то надеюсь получить (получать) здесь ответы на свои вопросы, а также реальные практические рекомендации более опытных коллег, кот. возможны именно только в общении...
чтение же специальной литературы (эргономика, юзабилити, то, се) -- вещь, конечно, оч. полезная, но... для моих, в общем-то, второстепенных задач -- сами понимаете...
только в качестве хобби... хотя сейчас гуи для меня и есть хобби...
 
ведущийся мой проект -- серьезная научная программа, которая (теперь) предполагает интерфейс... если будут нужны подробности, то, конечно же, их сообщу...
 
итак, что предлагается к обсуждению:

- общие рассуждения "на тему", от универсальности к конкретике...
- вопрос-ответ, практика, "как мне сделать?"
- какую библиотеку под такой вот компилятор мне лучше использовать?
  например, для неопределившихся (общие положения, не перекрывающиеся с другими
  темами форума)
- SDI vs MDI -- когда и зачем?
- взаимодействие посредством toolBars, Menus, hotKeys -- что лучше и в каких случаях или      
  все в одном...
- деревья, списки и таблицы -- наглядность и/или удобство? где и когда?
- докинг, плавающие окна или жесткое местоположение...
- выделять или не выделять? "приборно-панельно-бумажные" цвета, цветовые схемы и        
  палитры
и т д

 
сам я использую VCL на Delphi, т.к. считаю эту систему в большинстве случаев истинной RAD-cистемой
 
понятно, что интерфейс определяется конкретным приложением и говорить о его универсальности можно с некоторой натяжкой...
можно, конечно, делать архиватор со скинами... кстати, это и делают...
 
предлагаю только исключить из обсуждения интерфейсы граф- и текстовых редакторов, а также медиа проигрывателей -- что тут еще можно сказать?
 
 
итак, в качестве затравки:
 
Дано:
-------
приложение --
счет, ввод/вывод данных, визуализация результатов, несколько (4-5) разнородных форм
Надо:
------
SDI Или MDI?
 
 
------------------------------------------------------------
нужна ли такая тема,
что скажете, коллеги?

Всего записей: 24121 | Зарегистр. 06-12-2002 | Отправлено: 16:17 26-02-2005 | Исправлено: akaGM, 12:59 11-09-2023
LeoTon



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нужно в Delphi 7 переключить ListWiew в режим отображения Плиткой, как в проводнике Windows XP.  
Нашел, как переключать его в режим отображения группами, но подобрать комбинайию флагов для режима Плиткой не получается.  
 
Возможно, мне поможет прога из коплекта Вижулов по разбиранию на сообщения и свойства процессов, не помню как называется, если у кого это уже установлено, не могли бы мне дать список флагов ListView'а из проводника в режиме отображения файлов Плиткой...

Всего записей: 6 | Зарегистр. 03-11-2006 | Отправлено: 14:17 03-11-2006
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
хочу получить ответ на такой вот вопрос:
 
может кто-нибудь кратко и понятно сравнить две основополагающие библиотеки под Линакс: Qt и gtk с точки зрения написания GUI (кросс-платформенность не важна, именно Л)?
 
плюсы и минусы, простота использования и т.п. в _сравнении_?
а не список написанной на их основе прикладнухи, мол, KDE круче Gnome, GIMP vs KPaint  и т.д...
 
знаю, что есть большой топ по Qt (а по gtk нет), но там объяснят только все прелести самой Qt...
 
?

Всего записей: 24121 | Зарегистр. 06-12-2002 | Отправлено: 16:05 13-05-2007
imgen



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
qt - красиво , но медленно ,
gtk - быстро , проблемы со шрифтами , и некрасиво

Всего записей: 21 | Зарегистр. 27-12-2006 | Отправлено: 18:51 13-05-2007 | Исправлено: imgen, 18:53 13-05-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
"по три, но маленькие, большие, но по пять... но вчера..."
 
а быстро -- это что, код? окошки быстро таскаются? (что, в общем-то, непринципиально и есть маздай) или быстро гуй строится?

Всего записей: 24121 | Зарегистр. 06-12-2002 | Отправлено: 12:59 14-05-2007
alexnab



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
сайт http://usability.ru/ заражен вирусом Trojan-Clicker.JS.Agent.h

Всего записей: 2 | Зарегистр. 10-03-2005 | Отправлено: 16:05 17-02-2008
AlekXL



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM
MDI в том виде, который использовался, например, в Word97 (а Word - это, в сущности стандарт), это ерунда.
  • Во-первых сама MS от этого ифейса отказалась в последующих версиях продукта.  
  • Во-вторых, MS практически не развивает этот ифейс в Win.
  • В-третьих, MDI славился багами в дельфях и прочих средах.
  • В-четвертых, я не уверен, но, кажется, Win создает отдельную нить(thread) для каждого дочернего MDI окна. Нужно ли вам это?
  • В-пятых, MDI вовсе не так уж удобен и прост. Пользователь всегда стремится увеличить основную рабочую область, так что он максимизирует окошко с MDI, а его сестренкам придется прятаться под разделом меню "Окна", а зачем? Вы же паскалисты, а в дельфях вам дан наглядный пример, как можно эффективно реализовать закладки.

Суть в том, что пользователь в данный момент времени способен работать только с одним документом и MDI не нужен.

Почти любая прога должна иметь следующую модель интерфейса.
  1. Главное меню. Любая команда или действие должны быть доступны отсюда.
  2. Тулбар/ребар
  3. Панель статуса(statusbar) для отображения тек. операций и состояний/режимов
  4. Рабочая часть, которую можно сделать с закладками, как дельфи, опере, VS.NET IDE
  5. Окна свойств, как Object Inspector/Project manager в дельфи или Solution Explorer в VS7. Лучше всего пристыковываемые и с возможностью автомотического сокрытия/свертывания.
  6. Диалоги настроек в отдельных окна, в том числе немодальные. Если вы не знаете, они НИКАКОГО отношения к MDI в собственном понимании термина не имеют.

 

Всего записей: 792 | Зарегистр. 24-04-2008 | Отправлено: 06:21 02-05-2008
xeroslov



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите пожалуйста с вырезанием кнопки по региону. Инициализацию всё проходит довольно успешно. Но при нажатии  на кнопку появляется фон по которому я вырезал регион
Вот код обработчика:

Код:
switch(Msg)
    {
    case WM_INITDIALOG:
        {
            hInformation=GetDlgItem(hwnd,IDC_BUTTON1);
 
            hbmInformation=LoadBitmap(GetModuleHandle(NULL),MAKEINTRESOURCE(IDB_BUTTON_COMMON));
            hbmInformationHover=LoadBitmap(GetModuleHandle(NULL),MAKEINTRESOURCE(IDB_BUTTON_PRESSED));
        }break;
    case WM_DRAWITEM:
        {
            LPDRAWITEMSTRUCT lpdis=(LPDRAWITEMSTRUCT)lParam;  
            HDC hdcMem=CreateCompatibleDC(lpdis->hDC);
 
            if (lpdis->hwndItem == hInformation)
            {
                HDC hCDC=CreateCompatibleDC(lpdis->hDC);
 
                HBITMAP &hBmp=bInformationStateButton?hbmInformationHover:hbmInformation;
 
                HBITMAP hBmpOld=(HBITMAP)SelectObject(hCDC,hBmp);
 
                StretchBlt(lpdis->hDC,0,0,lpdis->rcItem.right-lpdis->rcItem.left,
                        lpdis->rcItem.bottom - lpdis->rcItem.top,hCDC,0,0,
                        SizeBitmap(hBmp).cx, SizeBitmap(hBmp).cy,SRCCOPY);
 
                SelectObject(hCDC, hBmpOld);
                DeleteDC(hCDC);
 
                RsrcHand=FindResource(NULL,MAKEINTRESOURCE(IDR_RGN1),RsrcType);
                RsrcPoint=LoadResource(NULL,RsrcHand);
                RsrcSize=SizeofResource(NULL,RsrcHand);
                SetWindowRgn(hInformation,ExtCreateRegion(NULL,RsrcSize,(RGNDATA*) RsrcPoint),TRUE);
            }
        }break;
    case WM_COMMAND:
        {
            if (wParam==IDCANCEL)                        // Exit button
            {
                ExitProcess(0);
            }
            if (IDC_BUTTON1)
            {
                bInformationStateButton=TRUE;
                MessageBox(hwnd,"pressed","caption",MB_OK);
 
                // как быть дальше?
            }
        }break;
    case WM_CLOSE:
        {
        EndDialog(hwnd,0);
        }break;
    }
return 0;
}

Вот код в проекте с картинками и файлами регионов:
http://rapidshare.com/files/138724570/RGNButton.rar.html

Всего записей: 17 | Зарегистр. 20-08-2008 | Отправлено: 18:14 21-08-2008
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
xeroslov
ты или на msdn поищи или в ветку про API обратись (тут же на форуме)...

Всего записей: 24121 | Зарегистр. 06-12-2002 | Отправлено: 20:17 21-08-2008
xeroslov



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
да искал уже - мало чего понял. в ветку про API обратился - результат никакой пока

Всего записей: 17 | Зарегистр. 20-08-2008 | Отправлено: 21:25 21-08-2008
xterm

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Коллеги, может кто-нибудь подскажет, откуда взят симпатичный ListView из программы URUSoft Subtitle Workshop. В Qt я слегка покопался, но идентичности добиться не смог, то ли недостаточно покопался, то ли это всё-таки не Qt. Скриншот прилагаю, заранее спасибо.

Всего записей: 96 | Зарегистр. 23-08-2009 | Отправлено: 09:37 03-10-2009
G787



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlekXL
А что не так с MDI, если можно по подробней.

Всего записей: 1035 | Зарегистр. 04-12-2005 | Отправлено: 18:08 06-10-2009
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
xterm

Цитата:
откуда взят симпатичный ListView из программы URUSoft Subtitle Workshop

а на чём это чудо (Subtitle Workshop) пИсано?

Всего записей: 24121 | Зарегистр. 06-12-2002 | Отправлено: 18:39 06-10-2009
Erazer



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
xterm
Возьми редактор ресурсов и вперед изучать. Если запакована, попробуй то что позволяет щупать в памяти.

Всего записей: 1729 | Зарегистр. 02-08-2003 | Отправлено: 00:06 07-10-2009
xterm

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM

Цитата:
а на чём это чудо (Subtitle Workshop) пИсано?

Не знаю, самому интересно
 
Erazer
Не хоцца, но видно придётся. Пару дней подожду ещё, может кто подскажет...
 

Всего записей: 96 | Зарегистр. 23-08-2009 | Отправлено: 05:54 07-10-2009
Hiken



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
xterm
akaGM
Возьмите хоть PEiD (ru.wikipedia.org/wiki/PEiD) и гляньте уже.

Всего записей: 1343 | Зарегистр. 14-01-2006 | Отправлено: 06:35 07-10-2009
xterm

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Hiken

Цитата:
Возьмите хоть PEiD (ru.wikipedia.org/wiki/PEiD) и гляньте уже.

По описанию хорошая штучка, только летит с unhandled exception.
 
Фиг знает, стринги названий типов внутри экзешника на "T" начинаются, один из вариантов - дельфи, а я всю жизнь на M$ сижу, дельфи и в глаза не видел. Чувствую, сейчас познакомимся.

Всего записей: 96 | Зарегистр. 23-08-2009 | Отправлено: 13:35 07-10-2009 | Исправлено: xterm, 14:18 07-10-2009
Hiken



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
unhandled exception.

Странно. Попробуйте еще редакторы ресурсов, анпакеры, если необходимо.
 
Ну а так я вообще не пойму, чем этот контрол красивый? Если и правда Delphi, то очень может быть, что это VirtualTreeview.

Всего записей: 1343 | Зарегистр. 14-01-2006 | Отправлено: 18:13 07-10-2009
data man



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
xterm
Он запакован UPX. Написан на Delphi.
И действительно используется VirtualTreeview.
 
Вот полный список используемых модулей:

----------
Любой достаточно развитый тролль неотличим от подлинно помешанного на какой-либо идее.
Кекс. Антибиотики. Ламбада.

Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 18:35 07-10-2009
xterm

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Hiken

Цитата:
Ну а так я вообще не пойму, чем этот контрол красивый?

Красивый - это пол-дела. По нему видно, что в нём решены некоторые баги, присущие стандартному виндоусовскому и соответственно дотнетовскому контролу, половину из которых я решил, а половину ещё нет. В нём шаг вправо или влево - и по уши в багах из-за непрорисовки, двойной прорисовки и т.д. Я имею в виду, в detailed mode.
 
data man
Супер.
Спасибо всем огромное, вопрос решён.

Всего записей: 96 | Зарегистр. 23-08-2009 | Отправлено: 05:12 08-10-2009 | Исправлено: xterm, 05:13 08-10-2009
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а если поднять тему? ;)
 
что сейчас модно в мордостроении в эпоху новых осей?

Всего записей: 24121 | Зарегистр. 06-12-2002 | Отправлено: 12:53 11-09-2023 | Исправлено: akaGM, 13:08 11-09-2023
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » создание интерфейса (пользователя) прикладной программы(GUI)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru