Автор | Сообщение |
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 16.03.06 18:35. Заголовок: Какой гафический терминал в xHarbour лучше!?
Поясните чайнику, какая из графических библиотек лучше(моднее что-ли)?! на какую упасть? Зачем их так много: MiniGUI, hwgui, GTWwt, XWt, What32 какая между ними принципиальная разница? Если переходить на графику, то надо все prg-ки переводить в WIN кодировку? Или будет достаточно поставить где-то как-то что-то вроде REQUEST HB_LANG_RU866, HB_SETCODEPAGE('RU866')! С ними у меня пока правда не получается ! Как отменить "засыпание" программы при переключении окон (ALT+TAB)?!
|
|
|
Ответов - 6
[только новые]
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 16.03.06 19:15. Заголовок: Re:
gtwvt - 100% эмуляция текстового режима + дополнительные функции реализующие win-контролы, gtwvw - то же самое только многоконный терминал gtxvt под win32 не собирается и не предназначен для этой ОС what32 - набор wrapper - функций, полволяющих делать вызовы из харбора функций win32. Самостоятельного значение не имеет, разве что на ее основе можно делать свою gui-библиотеку hwgui, minigui - полноценные свободные gui-библиотеки hwgui для win32 и unix, minigui только для win32 hwgui - ООП, minigui - псевдоООП minigui сейчас более распространена. Особенно обнадеживает адаптация под нее TSBrowse, поскольку ее родной грид слаб HB_SETCODEPAGE('RU866') может только автоматически конвертировать данные из БД, но не литеральные строки Стандартное средство харбора для этого - функция HB_SetTermCP, установка кодовой страницы терминала ее понимает gtwin но для єтого терминала она не нужна Для gtwvt/wvw достаточно вызвать wvt_SetCodepage(255) Для hwgui/minigui по-моему таких средств нет Из своего опыта (fivewin): я делал вызовы OemToAnsi перед экранным выводом и AnsiToOem при вводе. Конечно это муторно, но сделать реально Про засыпание не понял, уточни
|
|
|
|
| модератор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 16.03.06 19:22. Заголовок: Re:
Pager пишет: цитата: | Как отменить "засыпание" программы при переключении окон (ALT+TAB)?! |
| Попробуй сделать главное окно TopMost, либо просто необходимо посысить приоритет приложения (сделать его "высоким"), поскольку по умолчанию у всех приложений "нормальный" приоритет
|
|
|
|
| модератор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 16.03.06 19:28. Заголовок: Re:
Pasha пишет: цитата: | minigui сейчас более распространена. Особенно обнадеживает адаптация под нее TSBrowse, поскольку ее родной грид слаб |
| Мне лично нравиться в MiniGUI легкость ее командного языка. Смотри сам, как создается полноценное Win-окно: /* * MiniGUI This Demo * (c) 2003 Roberto Lopez */ #include "minigui.ch" Function Main DEFINE WINDOW Form_1 ; AT 0,0 ; WIDTH 400 ; HEIGHT 200 ; TITLE 'This Demo' ; MAIN ; ON INIT ThisWindow.Title := 'New Title' @ 10,10 BUTTON Button_1 ; CAPTION 'Hi!!!' ; ACTION ThisTest() ; TOOLTIP 'Test Tip' @ 40,10 BUTTON Button_2 ; CAPTION 'Release' ; ACTION ThisWindow.Release END WINDOW CENTER WINDOW Form_1 ACTIVATE WINDOW Form_1 Return Procedure ThisTest() This.Caption := 'New Caption' ThisWindow.Row := 10 ThisWindow.Col := 10 ThisWindow.Width := 200 ThisWindow.Height := 100 Return
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 17.03.06 09:19. Заголовок: Re:
Да по-моему во всех harbour gui библиотеках это делается одинаково просто Григорий, а возможно ли сделать для minigui что то вроде учета HB_SetTermCP или автоматическую перекодировку OEM <--> Ansi ?
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 17.03.06 09:33. Заголовок: Re:
Спасибо за компетентые ответы! Pasha твой первый ответ надо внести в FAQ! Про засыпание: Я пересобрал проектик под xHarbour без каких либо графических библ.(только NTX+ADS) Так вот при запуске любого отчета(циклы по базе) и если переключать окна(ALT+TAB), то задача "уходит" в паузу! После нажатия на любую клавишу из нее выходит. При использовании Граф.библ такого нет, но естиь другая проблемка -- задачу нельзя снять по CTRP+BREAK и CTRL+C..... в принципе это мелочи!
|
|
|
|
| модератор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 17.03.06 11:29. Заголовок: Re:
Pasha пишет: цитата: | Да по-моему во всех harbour gui библиотеках это делается одинаково просто |
| Согласен, здесь я был субъективен Pasha пишет: цитата: | Григорий, а возможно ли сделать для minigui что то вроде учета HB_SetTermCP или автоматическую перекодировку OEM <--> Ansi ? |
| Думаю, что это критично только при портировании исходников Клиппера в Харбор... Если это так, то почему бы просто не конвертировать исходники из DOS-кодировки в Win-кодировку с помощью редактора Bred, например.
|
|
|
|