Автор | Сообщение |
|
| |
Пост N: 176
Зарегистрирован: 08.07.06
|
|
Отправлено: 21.08.13 22:11. Заголовок: Переход с GTWIN на GTWVT, все вопросы в одной теме.
Давайте обсудим вопросы, связанные с переходом на "усовершенствованный" терминал GTWVT. Для этого, как я понял, нужно лишь включить в текст программы пару строк: #include "hbgtinfo.ch" REQUEST HB_GT_WVT_DEFAULT Все, новый терминал подключен и работает. Не могу понять, как менять кодовую страницу шрифта. Сделал: hb_gtInfo( HB_GTI_FONTNAME, "Terminal" ) hb_gtInfo( HB_GTI_FONTWIDTH, 12 ) hb_gtInfo( HB_GTI_FONTSIZE, 28 ) Чтобы получить вот такой шрифт (присутствует в системе 100% и с ним работает Far и GTWIN): Но почему-то неожиданно на экране появились кракозябры, но шрифт именно тот, который я и хотел. При установке "по умолчанию" или "Lucida Console" все ок. Что я забыл ?
|
|
|
Ответов - 56
, стр:
1
2
3
All
[только новые]
|
|
|
| |
Пост N: 186
Зарегистрирован: 08.07.06
|
|
Отправлено: 22.08.13 11:47. Заголовок: Dima пишет: Такой п..
Dima пишет: цитата: | Такой подход хорош если у всех твоих юзеров установлено одно и тоже разрешение экрана. А если нет , то надо учитывать и разрешение экрана. |
| У всех установлены экраны минимум 1280*1024 - как самый бюджетный на сегодня вариант. На 1440*1ххх и на 1920*1080 этот шрифт тоже смотрится отлично, просто больше свободного места, если не расширять стандартный SETMODE(25,80)
|
|
|
|
| |
Пост N: 22
Зарегистрирован: 24.04.13
|
|
Отправлено: 22.08.13 13:40. Заголовок: Sergy , а в чём преи..
Sergy , а в чём преимущества GTWVT ?
|
|
|
|
| |
Пост N: 3435
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.08.13 14:57. Заголовок: azoo Цитата из доки..
azoo Цитата из доки gtwvt - GT driver for MS-Windows. It creates its own GUI window instead of using MS-console window. It allows to change font, window size, etc. Supported only by Windows builds. is a pure console implementation of traditional Clipper terminal taking Windows API as its base console IO protocols. Its OI are rendered in a Windows window and hence all of MSDN is available for use with GTWVT. To let the memory refreshed, I must remind everybody that it is a superb work of Peter Rees contributed to xHarbour on 2003-12-22. gtwvg - GUI emulation of GTWVT. It implements itself on top of GTWVT. GTWVG ( WVTGUI in xHarbour ) offers functions and classes to present a console application look like a windows one. It renderes GUI elements on top of Clipper elements ( GETS, BROWSERS, BOXES, LINES ) which makes them feel like a Windows element. GTWVG can be used with existing code just adding some more code but without sacrificing or modifying old one. Also all IO commands can be rendered on top of the GUI elements А вообще смотри примеры (собирай их) и решай нужен тебе этот терминал или нет
|
|
|
|
| |
Пост N: 189
Зарегистрирован: 08.07.06
|
|
Отправлено: 22.08.13 15:13. Заголовок: azoo пишет: Sergy ,..
azoo пишет: цитата: | Sergy , а в чём преимущества GTWVT ? |
| Расширенный интерфейс программы - прежде всего реакция на события, такие, как например, закрытие окна "по крестику". Но он тянет за собой совсем ненужный гемор в виде отсутствия в свойствах окна программы диалога выбора шрифтов и перекладывает это на плечи программиста. Зачем так сделано - не совсем понятно.
|
|
|
|
| |
Пост N: 3439
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.08.13 15:22. Заголовок: Sergy пишет: Но он ..
Sergy пишет: цитата: | Но он тянет за собой совсем ненужный гемор в виде отсутствия в свойствах окна программы диалога выбора шрифтов |
| Dima пишет: цитата: | gtwvt - GT driver for MS-Windows. It creates its own GUI window |
| У какого GUI окна ты видел диалог выбора шрифтов , не считая Far Manager ?
|
|
|
|
| |
Пост N: 23
Зарегистрирован: 24.04.13
|
|
Отправлено: 22.08.13 15:42. Заголовок: А вообще смотри прим..
цитата: | А вообще смотри примеры (собирай их) и решай нужен тебе этот терминал или нет |
| Цель - использовать в программах не 80*25, а например 120*40.
|
|
|
|
| |
Пост N: 3442
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.08.13 15:43. Заголовок: azoo пишет: наприме..
azoo пишет: Да это возможно
|
|
|
|
| |
Пост N: 194
Зарегистрирован: 08.07.06
|
|
Отправлено: 22.08.13 15:56. Заголовок: azoo пишет: использ..
azoo пишет: цитата: | использовать в программах не 80*25, а например 120*40. |
| не знаю про такие параметры, но 35*100 точно работает под стандартным GTWIN
|
|
|
|
| |
Пост N: 3485
Зарегистрирован: 17.05.05
|
|
Отправлено: 28.08.13 17:33. Заголовок: да бы новую тему не ..
да бы новую тему не заводить спрошу тут. Cейчас в приложении GTWVT использую 25 строк и 80 столбцов . Если окно на весь экран (почти) то такой шрифт нормально воспринимается и читается. Порой этого маловато. Не подскажет кто из личного опыта другое кол-во строк и столбцов (большее) да так что бы не сильно мелко было и что бы любое железо держало этот режим. Спасиб. PS Размеры шрифта ставлю так nWidth := HB_GtInfo(HB_GTI_DESKTOPWIDTH) nHeight := HB_GtInfo(HB_GTI_DESKTOPHEIGHT) nFontH := Int(nHeight/25) nFontW := Int(nWidth /80) HB_GtInfo(HB_GTI_FONTSIZE , nFontH) HB_GtInfo(HB_GTI_FONTWIDTH, nFontW) setmode(25,80) Вроде не плох режим 35 на 130
|
|
|
|
| |
Пост N: 23
Зарегистрирован: 21.04.13
|
|
Отправлено: 28.08.13 18:39. Заголовок: Цитата: "менять ..
Цитата: "менять кодовую страницу шрифта" Что-то в этой фразе не так. Шрифт Terminal - не TrueType Используйте - Courier New или Lucida Console HB_GtInfo( HB_GTI_FONTNAME , xFONTNAME ) HB_GtInfo( HB_GTI_FONTWIDTH , xFONTWIDTH ) HB_GtInfo( HB_GTI_FONTSIZE , xFONTSIZE ) HB_GTINFO( HB_GTI_SCREENWIDTH , xSCREENWIDTH ) HB_GTINFO( HB_GTI_SCREENHEIGHT, xSCREENHEIGHT ) Окно GTWVT - другое, чем окно GTWIN и управление размерами(шрифтом) - по другому. Еще лучше сделать окно RESIZEABLE и тянуть мышкой за угол окна HB_GTINFO( HB_GTI_RESIZABLE, x ) HB_GTINFO( HB_GTI_CLOSABLE , x ) Окно GTWVT - все окно будет меняться (и размеры шрифтов - пропорционально) будет сохраняться: Число строк *число колонок
|
|
|
|
| |
Пост N: 24
Зарегистрирован: 21.04.13
|
|
Отправлено: 28.08.13 22:35. Заголовок: exe -test c двумя терминалами внутри
Скомпилировать пример - ниже по тексту. Запустить два раза 1) test.exe //gtwin 2) test.exe //gtwvt Пробовать потянуть окна за правый нижний угол, правой кнопкой мыши - открыть меню окна. Смотрим разницу в поведении окон. У win окна - есть скролинг и окно свойств для выбора шрифта и размера у wvt окна - нет скролинга и нет выбора шрифта в контекстном меню ====================== #include "hbgtinfo.ch" Proc main() Local lGT_WVT := ( hb_gtversion() = "WVT") Local lGT_WIN := ( hb_gtversion() = "WIN") REQUEST HB_GT_WIN REQUEST HB_GT_WVT REQUEST HB_GT_WVT_DEFAULT REQUEST HB_LANG_RU866 HB_LangSelect( "RU866" ) REQUEST HB_CODEPAGE_RU866 HB_CDPSELECT( "RU866" ) // если не указать - будут кракозябры в "АБВГД абвгд" HB_GTINFO( HB_GTI_FONTNAME, "fixed" ) HB_GTINFO( HB_GTI_FONTWIDTH, 9 ) HB_GTINFO( HB_GTI_FONTSIZE, 20 ) ? OS(), VERSION(), DATE(), TIME() ? HB_GTVERSION(), HB_GTVERSION(1) ? "АБВГД абвгд" ? "" inkey(0) return nil
|
|
|
|
|
| |
Пост N: 24
Зарегистрирован: 24.04.13
|
|
Отправлено: 29.08.13 09:42. Заголовок: petr707 , получается..
petr707 , получается разница только в том, что в win-окне шрифт можно выбрать через меню, а в Wvt - путём растягивания окна мышкой.
|
|
|
|
| |
Пост N: 26
Зарегистрирован: 21.04.13
|
|
Отправлено: 29.08.13 10:16. Заголовок: не только..
в консольном WIN окне - выбор шрифтов ограничен одним набором, в Wvt- другим WVT - реально лучше работать, когда заранее неизвестны размеры и разрешение экрана задачи, например при удаленном терминальном доступе на неизвестный комп. WVT -есть свойство- можно выставить на максимальный размер под текущее разрешение. Сохраняется (число строк*число колонок). Для Win -окна в этом режиме - крайне неудобно подгонять и настраивать размер шрифта.
|
|
|
|
| |
Пост N: 412
Зарегистрирован: 08.07.06
|
|
Отправлено: 16.09.14 12:49. Заголовок: Разбираюсь с GTWVT д..
Разбираюсь с GTWVT дальше. Вопрос с запуском внешних команд. 1) Команда __RUN() используется для запуска bat файлов как вынужденная мера, но при запуске приложений, например просмотрщика картинок или чего-то с GUI интерфейсом создает маленькое консольное окно с cmd.exe 2) Команда HB_RUN() - запускает аналогично RUN, но консольное окно cmd.exe вырастает в размер окна запустившего его GTWVT приложения 3) Команда hb_ProcessRun() - работает как нужно, НО: категорически отказывается запускать батники. Даже так: hb_ProcessRun("cmd /c "+cCommand). Мелкое консольное окно "моргает", но находжящиеся внутри батника команды echo / pause не отрабатывают. Да и судя по результатам - батник точно не запускается... Какой способ универсальный ? Наверянка, я что-то упускаю из виду...
|
|
|
|
| |
Пост N: 4210
Зарегистрирован: 17.05.05
|
|
Отправлено: 16.09.14 13:01. Заголовок: Sergy пишет: 1) Ком..
Sergy пишет: цитата: | 1) Команда __RUN() используется для запуска bat файлов как вынужденная мера, но при запуске приложений, например просмотрщика картинок или чего-то с GUI интерфейсом создает маленькое консольное окно с cmd.exe |
| Картинки можно показывать средствами GTWVT
|
|
|
|
| |
Пост N: 415
Зарегистрирован: 08.07.06
|
|
Отправлено: 16.09.14 14:24. Заголовок: Dima пишет: Картинк..
Dima пишет: цитата: | Картинки можно показывать средствами GTWVT |
| Пока не смог разобраться с правильным масштабированием (с сохранением пропорций). Подскажи плиз, в каком направлении искать. Но в любом случае - это был просто как пример. Всё равно остается потребность в вызове внешних приложений. Нужен универсальный способ (если это возможно).
|
|
|
|
| |
Пост N: 4211
Зарегистрирован: 17.05.05
|
|
Отправлено: 16.09.14 14:36. Заголовок: Sergy пишет: Пока н..
Sergy пишет: цитата: | Пока не смог разобраться с правильным масштабированием (с сохранением пропорций) |
| у себя я сделал так Wvt_DrawImage( 0, 0, MaxRow(), MaxCol(), cfile,,.f.)
|
|
|
|
| |
Пост N: 416
Зарегистрирован: 08.07.06
|
|
Отправлено: 16.09.14 14:46. Заголовок: Вот Przemek пишет пр..
Вот Przemek пишет про различие в методах запуска тут: https://groups.google.com/forum/#]https://groups.google.com/forum/#!topic/harbour-users/AKswxE07xYo цитата: | There are two main differences between __RUN()/HB_RUN() and hb_processRun() hb_processRun() was designed to fast execute other processes with the possibility of redirecting their standard input and outputs. It runs them directly without system SHELL as middle layer. __RUN() and HB_RUN() executes system commands sending them to platform dependent SHELL. The second difference is in GT suspending. If you look at __RUN() or HB_RUN() code then you will find that they suspend and resume internally GT calling hb_gtSuspend() and hb_gtResume(). Depending on used GT hb_gtSuspend() makes base environment ready to run child process in system console and hb_gtResume() restores console settings when child process finished. In case of GTWIN, GTOS2 or GTDOS which work on system console window or operate directly on hardware (GTDOS) it's possible to access screen/console data so inside hb_gtResume() they copy the screen data to internal GT screen buffer so later it can be accessed from the Harbour application. That's all. If you need hb_processRun() make the same then you can change it in src/rtl/hbprocfn.c adding inside HB_FUNC( HB_PROCESSCLOSE ) hb_gtSuspend(); just before the line with hb_fsProcessRun() and hb_gtResume(); after this line. Such modification is not planned in core code because by definition hb_processRun() should work as fast as possible and in most of cases the child process output is redirected so it does not affect the screen. |
|
|
|
|
|
| постоянный участник
|
Пост N: 3634
Зарегистрирован: 12.09.06
|
|
Отправлено: 16.09.14 18:36. Заголовок: Sergy пишет: Вопрос..
|
|
|
|
| |
Пост N: 4212
Зарегистрирован: 17.05.05
|
|
Отправлено: 16.09.14 19:41. Заголовок: Andrey пишет: Sergy..
Andrey пишет: цитата: | Sergy пишет: цитата: Вопрос с запуском внешних команд. |
| Использую под GTWVT , EXECANDWAIT ,работает нормально. BAT файлы запускать не пробовал , запускаю EXE.
|
|
|
Ответов - 56
, стр:
1
2
3
All
[только новые]
|
|