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





Пост 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" все ок.
Что я забыл ?


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 56 , стр: 1 2 3 All [только новые]


администратор




Пост N: 3425
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 21.08.13 22:14. Заголовок: hb_gtInfo(HB_GTI_COD..


hb_gtInfo(HB_GTI_CODEPAGE, 255)

PS
Полный текст исходника давай в следующий раз

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 177
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 21.08.13 23:09. Заголовок: Dima пишет: hb_gtIn..


Dima пишет:

 цитата:
hb_gtInfo(HB_GTI_CODEPAGE, 255)


Чет не пошло никак...

 цитата:
PS
Полный текст исходника давай в следующий раз



Сорри

 
FUNC Main

REQUEST HB_LANG_RU866
REQUEST HB_CODEPAGE_RU866
HB_LANGSELECT("RU866")
HB_CDPSELECT("RU866")

#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 )
hb_gtInfo( HB_GTI_CODEPAGE, 255 ) // почему-то все равно кракозябры...
hb_gtInfo( HB_GTI_ICONFILE, "trade.ico" ) // и как загружать иконку из ресурса программы ? - новый драйвер игнорирует команду -icon= в hbp ?


? "Проверка шрифта Splushka.fon (aka Terminal 12*28)"
WAIT
QUIT

RETURN


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 178
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 21.08.13 23:14. Заголовок: Вот сам шрифт Splush..


Вот сам шрифт Splushka.fon: https://dl.dropboxusercontent.com/s/4bngq8tox32k3dm/splushka.fon?token_hash=AAH3LAd8t6uPfI3Hpu-x7d-F3ekaWi_xFp7DT1VKcdAH4Q&dl=1

с GTWIN, Clipper(ntvdm) и Far работает прекрасно, а тут - кракозябры...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 904
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 22.08.13 07:59. Заголовок: Sergy пишет: hb_gtI..


Sergy пишет:

 цитата:
hb_gtInfo( HB_GTI_FONTNAME, "Terminal" )


Это точно ПРАВИЛЬНОЕ название? Как его винда отображает?

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




Пост N: 3427
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.08.13 08:50. Заголовок: Sergy пишет: hb_gt..


Sergy пишет:

 цитата:
hb_gtInfo( HB_GTI_ICONFILE, "trade.ico" )


Hb_GtInfo( HB_GTI_ICONRES...........

Спасибо: 1 
ПрофильЦитата Ответить
администратор




Пост N: 3428
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.08.13 08:58. Заголовок: Sergy пишет: hb_gtI..


Sergy пишет:

 цитата:
hb_gtInfo( HB_GTI_FONTNAME, "Terminal" )


В Harbour 2.0 все нормик а вот в 3.2 да крякозяблы

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 179
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 09:00. Заголовок: PSP пишет: Это точн..


PSP пишет:

 цитата:
Это точно ПРАВИЛЬНОЕ название? Как его винда отображает?



В свойствах ярлыка (или программы) он виден как "точечные шрифты" двух размеров: 10х21 и 12х28
Файл - splushka.fon (ссылку давал).
встроенный просмотрщик шрифтов Windows называет его "Terminal 16".

По сути - он такой командой подключается, это видно по форме букв/цифр. Но что-то не так с кодировкой.

Dima пишет:

 цитата:
Hb_GtInfo( HB_GTI_ICONRES


Спасибо, помогло.
Долго мучался, пока понял, что иконку нужно задавать по порядковому номеру, а не имени.

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




Пост N: 3429
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.08.13 09:38. Заголовок: Sergy пишет: встрое..


Sergy пишет:

 цитата:
встроенный просмотрщик шрифтов Windows называет его "Terminal 16"


А вот так нормик
hb_gtInfo( HB_GTI_FONTNAME, "Terminal 16" )

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 906
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 22.08.13 09:46. Заголовок: Sergy пишет: встрое..


Sergy пишет:

 цитата:
встроенный просмотрщик шрифтов Windows называет его "Terminal 16"


Dima пишет:

 цитата:
А вот так нормик
hb_gtInfo( HB_GTI_FONTNAME, "Terminal 16" )


Вот тожжж... ))) Просто Terminal - это совсем не тот шрифт.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 180
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 10:20. Заголовок: Dima пишет: А вот т..


Dima пишет:

 цитата:
А вот так нормик
hb_gtInfo( HB_GTI_FONTNAME, "Terminal 16" )



А у меня так включается стандартный для GTWVT, наверное Courier.
Но без кракозябр, разумеется.
У тебя начертание шрифта получилось таким, как в первом сообщении темы ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 907
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 22.08.13 10:27. Заголовок: Sergy а включен ли ..


Sergy
а включен ли у тебя Clear Type в свойствах экрана? )))

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




Пост N: 3430
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.08.13 10:34. Заголовок: Sergy hb_gtInfo(HB_..


Sergy
hb_gtInfo(HB_GTI_FONTQUALITY,4) // с цифиркой поиграйся

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2935
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 22.08.13 10:41. Заголовок: Попробуй посмотреть ..


Попробуй посмотреть прогу, Я её делал для хХарбора, но потом так и не доделал для Харбора.
Но шрифты ,она показывает нормально.
http://files.mail.ru/1770CC824FB043A69486B4955A1EF7DE

Для хХарбора:
http://files.mail.ru/BA1F70EC314A4810A2254B0B13F799E2

Спасибо: 1 
ПрофильЦитата Ответить





Пост N: 181
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 10:41. Заголовок: PSP пишет: а включе..


PSP пишет:

 цитата:
а включен ли у тебя Clear Type в свойствах экрана? )))



немного не понял... Clear Type нужно как-то включить в самой винде ?
Но ведь Far показывает этот шрифт без проблем. GTWIN - тоже.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 182
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 10:45. Заголовок: Dima пишет: hb_gtIn..


Dima пишет:

 цитата:
hb_gtInfo(HB_GTI_FONTQUALITY,4) // с цифиркой поиграйся


Пробовал от 0 до 5 - начертание шрифте не меняется, по-прежнему показывает Courier
Как понял, от цифр зависит "мягкость" прорисовки". 0..1 -мягко 3..5 - жестко и угловато...

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 183
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 10:46. Заголовок: Andrey пишет: Попро..


Andrey пишет:

 цитата:
Попробуй посмотреть прогу, Я её делал для хХарбора, но потом так и не доделал для Харбора.
Но шрифты ,она показывает нормально.
http://files.mail.ru/1770CC824FB043A69486B4955A1EF7DE



Спасибо, пригодится. Попытаюсь разобраться.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 184
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 10:48. Заголовок: И еще непонятно - пр..


И еще непонятно - при запуске программы с GTWVT возникает ДВА окна: одно черное и пустое, с иконкой, которая "должна быть", а второе - собственно с самой программой.
Когда выходишь из программы - оба окна закрываются.

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




Пост N: 3432
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.08.13 10:52. Заголовок: Sergy пишет: И еще ..


Sergy пишет:

 цитата:
И еще непонятно - при запуске программы с GTWVT возникает ДВА окна


как вариант опция hbmk2
-gui

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 185
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 10:57. Заголовок: Dima пишет: как вар..


Dima пишет:

 цитата:
как вариант опция hbmk2
-gui





Заработало. Попробовал опцию -gtwvt - тоже норм.
Спасибо.

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




Пост N: 3433
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.08.13 11:10. Заголовок: Sergy пишет: hb_gtI..


Sergy пишет:

 цитата:
hb_gtInfo( HB_GTI_FONTWIDTH, 12 )
hb_gtInfo( HB_GTI_FONTSIZE, 28 )


Такой подход хорош если у всех твоих юзеров установлено одно и тоже разрешение экрана.
А если нет , то надо учитывать и разрешение экрана.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 186
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 11:47. Заголовок: Dima пишет: Такой п..


Dima пишет:

 цитата:
Такой подход хорош если у всех твоих юзеров установлено одно и тоже разрешение экрана.
А если нет , то надо учитывать и разрешение экрана.



У всех установлены экраны минимум 1280*1024 - как самый бюджетный на сегодня вариант.
На 1440*1ххх и на 1920*1080 этот шрифт тоже смотрится отлично, просто больше свободного места, если не расширять стандартный SETMODE(25,80)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 22
Зарегистрирован: 24.04.13
ссылка на сообщение  Отправлено: 22.08.13 13:40. Заголовок: Sergy , а в чём преи..


Sergy , а в чём преимущества GTWVT ?

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




Пост 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



А вообще смотри примеры (собирай их) и решай нужен тебе этот терминал или нет

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 189
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 15:13. Заголовок: azoo пишет: Sergy ,..


azoo пишет:

 цитата:
Sergy , а в чём преимущества GTWVT ?



Расширенный интерфейс программы - прежде всего реакция на события, такие, как например, закрытие окна "по крестику".
Но он тянет за собой совсем ненужный гемор в виде отсутствия в свойствах окна программы диалога выбора шрифтов и перекладывает это на плечи программиста.
Зачем так сделано - не совсем понятно.

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




Пост 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 ?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 23
Зарегистрирован: 24.04.13
ссылка на сообщение  Отправлено: 22.08.13 15:42. Заголовок: А вообще смотри прим..



 цитата:
А вообще смотри примеры (собирай их) и решай нужен тебе этот терминал или нет


Цель - использовать в программах не 80*25, а например 120*40.




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




Пост N: 3442
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.08.13 15:43. Заголовок: azoo пишет: наприме..


azoo пишет:

 цитата:
например 120*40


Да это возможно

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 194
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 22.08.13 15:56. Заголовок: azoo пишет: использ..


azoo пишет:

 цитата:
использовать в программах не 80*25, а например 120*40.



не знаю про такие параметры, но 35*100 точно работает под стандартным GTWIN

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




Пост 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

Спасибо: 0 
ПрофильЦитата Ответить



Пост 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 - все окно будет меняться (и размеры шрифтов - пропорционально)
будет сохраняться: Число строк *число колонок

Спасибо: 0 
ПрофильЦитата Ответить



Пост 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



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 24
Зарегистрирован: 24.04.13
ссылка на сообщение  Отправлено: 29.08.13 09:42. Заголовок: petr707 , получается..


petr707 , получается разница только в том, что в win-окне шрифт можно выбрать через меню,
а в Wvt - путём растягивания окна мышкой.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 26
Зарегистрирован: 21.04.13
ссылка на сообщение  Отправлено: 29.08.13 10:16. Заголовок: не только..


в консольном WIN окне - выбор шрифтов ограничен одним набором, в Wvt- другим

WVT - реально лучше работать, когда заранее неизвестны размеры и разрешение экрана задачи,
например при удаленном терминальном доступе на неизвестный комп.
WVT -есть свойство- можно выставить на максимальный размер под текущее разрешение.
Сохраняется (число строк*число колонок).
Для Win -окна в этом режиме - крайне неудобно подгонять и настраивать размер шрифта.


Спасибо: 0 
ПрофильЦитата Ответить





Пост 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 не отрабатывают. Да и судя по результатам - батник точно не запускается...

Какой способ универсальный ?
Наверянка, я что-то упускаю из виду...

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




Пост N: 4210
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.09.14 13:01. Заголовок: Sergy пишет: 1) Ком..


Sergy пишет:

 цитата:
1) Команда __RUN() используется для запуска bat файлов как вынужденная мера, но при запуске приложений, например просмотрщика картинок или чего-то с GUI интерфейсом создает маленькое консольное окно с cmd.exe


Картинки можно показывать средствами GTWVT

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 415
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 16.09.14 14:24. Заголовок: Dima пишет: Картинк..


Dima пишет:

 цитата:
Картинки можно показывать средствами GTWVT


Пока не смог разобраться с правильным масштабированием (с сохранением пропорций). Подскажи плиз, в каком направлении искать.

Но в любом случае - это был просто как пример. Всё равно остается потребность в вызове внешних приложений.
Нужен универсальный способ (если это возможно).

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




Пост N: 4211
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.09.14 14:36. Заголовок: Sergy пишет: Пока н..


Sergy пишет:

 цитата:
Пока не смог разобраться с правильным масштабированием (с сохранением пропорций)


у себя я сделал так Wvt_DrawImage( 0, 0, MaxRow(), MaxCol(), cfile,,.f.)

Спасибо: 0 
ПрофильЦитата Ответить





Пост 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.




Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3634
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 16.09.14 18:36. Заголовок: Sergy пишет: Вопрос..


Sergy пишет:

 цитата:
Вопрос с запуском внешних команд.

Sergy пишет:

 цитата:
Какой способ универсальный ?



ShellExecute !
Примеры запуска для хХарбора - http://file.qip.ru/arch/PGm5DMjR/ShellExecute.html


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




Пост N: 4212
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.09.14 19:41. Заголовок: Andrey пишет: Sergy..


Andrey пишет:

 цитата:
Sergy пишет:

цитата:
Вопрос с запуском внешних команд.


Использую под GTWVT , EXECANDWAIT ,работает нормально. BAT файлы запускать не пробовал , запускаю EXE.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 417
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 17.09.14 23:21. Заголовок: Вопрос по GTWVG: По..


Вопрос по GTWVG:

Почему не отрабатывает команда hb_gtInfo( HB_GTI_SETPOS_XY , {x,y}) ? написал INIT/EXIT процедуры, сохраняющие состояние окна: выбранный шрифт, положение, начертание, размер и тп. В GTWVT - работает, тут - нет. Все восстанавливается, но окно - только по центру экрана. Каждый раз после запуска юзерам перетаскивать мышкой на "удобное" место - ппц радость какая...





Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 418
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 18.09.14 11:20. Заголовок: Sergy может надо ис..


Sergy
может надо использовать (см. wvgwin.c)
HB_FUNC( WVG_MOVEWINDOW )

получи hb_Func список с *.c файлов - много интересного


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 418
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 19.09.14 11:40. Заголовок: SergKis пишет: може..


SergKis пишет:

 цитата:
может надо использовать (см. wvgwin.c)
HB_FUNC( WVG_MOVEWINDOW )



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

Как оказалось, несовместимость формы вызова GTWVG драйвере. Пофиксено только что:


 цитата:
2014-09-18 00:23 UTC-0800 Pritpal Bedi (bedipritpal/at/hotmail.com)
* contrib/gtwvg/gtwgud.c
+ Added: hb_gtInfo( HB_GTI_SETPOS_XY, { nRow|nX, nCol|nY } )
in addition to previous implementation.



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 419
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.09.14 12:24. Заголовок: Sergy пишет:Хотелось..


Sergy пишет:
 цитата:
Хотелось-бы некой стабильности


у меня WVG (hb 2.0) закончилась тестами с меню - все работало, мой товарищ перевел достаточно большую задачу (2.5 -года назад), все очень стабильно, но мы сразу ушли в MiniGUI. Т.е. мой товарищ перевел в gui полностью эту же задачу (клиентам больше нравится), а я в консоли на hb (bat-ы крутятся) заменяю режимы вызовами MiniGUI (справочники, вызов справочников в документах), грузится и работает очень быстро (все с LetoDb). И т.к. Linuks у нас в стране погиб, то WVT не актуален, а gui рулит.
В MiniGui есть режим совмещенный с WVT, смотрел пример в поставке и все ..., детали надо проверять

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 420
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.09.14 12:35. Заголовок: Sergy пишет:должны о..


Sergy пишет:
 цитата:
должны отрабатывать одинаковые вызовы с однотипными результатами.


попробуй др. строку (hbgtinfo.ch)
...
#define HB_GTI_SETPOS_XY 55 /* Get/Set current top-left position coordinates of the window by pixels */
#define HB_GTI_SETPOS_ROWCOL 56 /* Set current top-left position coordinates of the window by row/cols */

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 419
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 20.09.14 00:03. Заголовок: Dima пишет: Использ..


Dima пишет:

 цитата:
Использую под GTWVT , EXECANDWAIT ,работает нормально. BAT файлы запускать не пробовал , запускаю EXE.



Только что обнаружил, что hb_ProcessRun() при вызове программы с GUI "замораживает" рабочее окно программы. Просто получается белый квадрат.
Точно такое-же поведение дает EXECANDWAIT(), взятый отсюда: http://clipper.borda.ru/?1-4-0-00000327-000-40-0

Т.е. получается, если нужно дождаться завершения работы вызванной программы - hb_ProcessRun() или EXECANDWAIT(), но окно программы под GTWVT/GTWVG не обновляется. Совсем.

Если нужно, чтобы окно обновлялось - нужен вызов ShellExecute(), но при этом программа не дожидается завершения...

Может что-то я упустил ?
Спасибо

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 93
Зарегистрирован: 24.04.13
ссылка на сообщение  Отправлено: 12.06.15 09:57. Заголовок: У меня строчка указа..


У меня строчка указана:
hb_gtInfo(HB_GTI_FONTNAME, 'Lucida Console')

Почему на разных мониторах окно программы выглядит по-разному.
В частности шрифты.


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




Пост N: 4885
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.06.15 10:13. Заголовок: azoo пишет: hb_gtIn..


azoo пишет:

 цитата:
hb_gtInfo(HB_GTI_FONTNAME, 'Lucida Console')


После нее добавь пару строчек и попробуй
 
HB_GtInfo(HB_GTI_FONTSIZE , Int(HB_GtInfo(HB_GTI_DESKTOPHEIGHT)/25))
HB_GtInfo(HB_GTI_FONTWIDTH, Int(HB_GtInfo(HB_GTI_DESKTOPWIDTH)/80))
hb_gtInfo(HB_GTI_FONTQUALITY,4)
setmode(25,80)


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 94
Зарегистрирован: 24.04.13
ссылка на сообщение  Отправлено: 12.06.15 10:43. Заголовок: Dima , я FONTSIZE и ..


Dima , я FONTSIZE и FONTWIDTH вообще не указывал.
Добавил эти строки разницы не заметил (у меня размер окна 40*100).
Но обнаружил, что на одинаковых разрешенииях шрифты отображаются одинаково на разных мониторах,
даже если один 19", а другой 17".
Когда на одном десктопе 1280*1024 - всё нормально, но при 1024*768 шрифт очень тонкий.
Вот такой эффект. Хотя казалось бы должно быть наоборот.

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




Пост N: 4886
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.06.15 10:46. Заголовок: azoo пишет: но при ..


azoo пишет:

 цитата:
но при 1024*768 шрифт очень тонкий.


CLEARTYPE в настройках винды включен ?
Я про https://ru.wikipedia.org/wiki/ClearType

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




Пост N: 4887
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.06.15 10:48. Заголовок: azoo пишет: Добавил..


azoo пишет:

 цитата:
Добавил эти строки разницы не заметил (у меня размер окна 40*100)


это в строках и колонках ? коли так там и коэффициенты будут другие.
HB_GtInfo(HB_GTI_FONTSIZE , Int(HB_GtInfo(HB_GTI_DESKTOPHEIGHT)/40))
HB_GtInfo(HB_GTI_FONTWIDTH, Int(HB_GtInfo(HB_GTI_DESKTOPWIDTH)/100))
Setmode(40,100)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 95
Зарегистрирован: 24.04.13
ссылка на сообщение  Отправлено: 12.06.15 11:36. Заголовок: Dima пишет: HB_GtIn..


Dima пишет:

 цитата:
HB_GtInfo(HB_GTI_FONTSIZE , Int(HB_GtInfo(HB_GTI_DESKTOPHEIGHT)/40))
HB_GtInfo(HB_GTI_FONTWIDTH, Int(HB_GtInfo(HB_GTI_DESKTOPWIDTH)/100))
Setmode(40,100)


Тут всё понятно, конечно 40 и 100

Dima пишет:

 цитата:
CLEARTYPE в настройках винды включен ?
Я про https://ru.wikipedia.org/wiki/ClearType


Это решило проблему. Я раньше заметил, что шрифт утончается только на Windows XP, на Windows 7 всё нормально.
Про ClearType не знал. Когда его включил, стало всё как надо, т.е. на любых разрешениях
шрифты одинаковой толщины. Век живи, век учись. Спасибо.

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




Пост N: 4888
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.06.15 13:01. Заголовок: azoo А у тебя окошк..


azoo
А у тебя окошко на весь экран ?
Могу предложить вариант WVT_SETMODE

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 96
Зарегистрирован: 24.04.13
ссылка на сообщение  Отправлено: 12.06.15 16:52. Заголовок: Dima пишет: А у теб..


Dima пишет:

 цитата:
А у тебя окошко на весь экран ?
Могу предложить вариант WVT_SETMODE


Да, я использую функцию WVT_SETMODE.
Окно не на весь экран. Получается равномерный отступ от краёв рабочего стола.
Единственный небольшой минус - это при использовании на широкоформатных мониторах
шрифты слишком растянуты по горизонтали.

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




Пост N: 4891
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.06.15 17:17. Заголовок: azoo пишет: Да, я и..


azoo пишет:

 цитата:
Да, я использую функцию WVT_SETMODE


Выложи ее , хочу взглянуть , возможно твоя более совершенна.


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 97
Зарегистрирован: 24.04.13
ссылка на сообщение  Отправлено: 15.06.15 08:27. Заголовок: Функция WVT_SETMODE ..


Функция WVT_SETMODE из форума:
Смена "режима" под GTWVT
Эти 2 темы можно объединить в одну.


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 56 , стр: 1 2 3 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

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