On-line: Pasha, PSP, гостей 2. Всего: 4 [подробнее..]
АвторСообщение



Не зарегистрирован
Зарегистрирован: 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)?!

Спасибо: 0 
Профиль
Ответов - 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 при вводе. Конечно это муторно, но сделать реально

Про засыпание не понял, уточни


Спасибо: 0 
Профиль
модератор




Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 16.03.06 19:22. Заголовок: Re:


Pager пишет:

 цитата:
Как отменить "засыпание" программы при переключении окон (ALT+TAB)?!


Попробуй сделать главное окно TopMost, либо просто необходимо посысить приоритет приложения (сделать его "высоким"), поскольку по умолчанию у всех приложений "нормальный" приоритет

Спасибо: 0 
Профиль
модератор




Не зарегистрирован
Зарегистрирован: 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

Спасибо: 0 
Профиль
Администратор




Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 17.03.06 09:19. Заголовок: Re:


Да по-моему во всех harbour gui библиотеках это делается одинаково просто

Григорий, а возможно ли сделать для minigui что то вроде учета HB_SetTermCP
или автоматическую перекодировку OEM <--> Ansi ?


Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 17.03.06 09:33. Заголовок: Re:


Спасибо за компетентые ответы! Pasha твой первый ответ надо внести в FAQ!

Про засыпание: Я пересобрал проектик под xHarbour без каких либо графических библ.(только NTX+ADS) Так вот при запуске любого отчета(циклы по базе) и если переключать окна(ALT+TAB), то задача "уходит" в паузу! После нажатия на любую клавишу из нее выходит. При использовании Граф.библ такого нет, но естиь другая проблемка -- задачу нельзя снять по CTRP+BREAK и CTRL+C..... в принципе это мелочи!


Спасибо: 0 
Профиль
модератор




Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 17.03.06 11:29. Заголовок: Re:


Pasha пишет:

 цитата:
Да по-моему во всех harbour gui библиотеках это делается одинаково просто


Согласен, здесь я был субъективен

Pasha пишет:

 цитата:
Григорий, а возможно ли сделать для minigui что то вроде учета HB_SetTermCP
или автоматическую перекодировку OEM <--> Ansi ?


Думаю, что это критично только при портировании исходников Клиппера в Харбор...
Если это так, то почему бы просто не конвертировать исходники из DOS-кодировки в Win-кодировку с помощью редактора Bred, например.

Спасибо: 0 
Профиль
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 148
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет