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


Пост N: 1065
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 31.08.18 18:47. Заголовок: HwGui 2.21


Приветствую всех!
Выпустил сегодня очередной релиз: HwGui 2.21 build 1.
Как обычно, zip с исходниками - на Sourceforge, бинарники для Bcc 5.1 и Mingw 4.8.2 - у меня на http://www.kresin.ru/hwgui.html

Спасибо: 1 
ПрофильЦитата Ответить
Ответов - 166 , стр: 1 2 3 4 5 6 7 8 9 All [только новые]


moderator


Пост N: 1112
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 21.11.18 08:44. Заголовок: Я постараюсь. Если P..


Я постараюсь.
Если ProgressBar достаточно прост, там всего-ничего, то Browse...

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





Пост N: 374
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 21.11.18 11:25. Заголовок: Сильно не отвлекайте..


Сильно не отвлекайтесь на меня... "смотрю" во время "отдыха". Часто использую функции *Token(), которые в "других" библиотеках, соответственно стандартный сборщик не видит библ. Добавил в bld.bat

if exist %HRB_DIR%\lib\ct.lib echo %HRB_DIR%\lib\ct.lib + >> b32.bc
if exist %HRB_DIR%\lib\xhb.lib echo %HRB_DIR%\lib\xhb.lib + >> b32.bc

т.е. для xHarbour & Harbour соответсвенно

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



Пост N: 211
Зарегистрирован: 19.05.05
ссылка на сообщение  Отправлено: 21.11.18 17:11. Заголовок: Александр добрый ден..


Александр добрый день! Выскочила ошибка в DBCHW.
Ошибкам проявляется в том случае, если кликнуть мышкой
правее последнего поля таблицы. Такой ошибки не было в версии
2.18 build 2.

Error BASE/1132 Bound error: array access
Called from source\winapi\hbrowse.prg->HBROWSE:BUTTONDOWN(1517)
Called from source\winapi\hbrowse.prg->HBROWSE:ONEVENT(393)
Called from ->HWG_ACTIVATEMDIWINDOW(0)
Called from source\winapi\hwindow.prg->HMAINWINDOW:ACTIVATE(361)
Called from dbchw.prg->MAIN(296)

HWGUI 2.21 Build 6
Date:21/11/18
Time:15:56:18

И еще одно замечание. В версии 2.18 build 2. все открытые индексы
были в списке открытых индексов, и можно было выбрать любой индекс.
Сейчас остается только один последний индекс. Это теперь так
всегда будет?

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


Пост N: 1113
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 21.11.18 18:39. Заголовок: nick_mi пишет: Erro..


nick_mi пишет:

 цитата:
Error BASE/1132 Bound error: array access
Called from source\winapi\hbrowse.prg->HBROWSE:BUTTONDOWN(1517)


Исправил, залил на SVN.


 цитата:
В версии 2.18 build 2. все открытые индексы
были в списке открытых индексов, и можно было выбрать любой индекс.
Сейчас остается только один последний индекс.



Это если индексы в нескольких файлах и вы их открываете по одному (Open index)?
Да, там стоял просто set index to, я сейчас добавил additive. Но это уже очень давно не менялось.

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





Пост N: 375
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 22.11.18 12:21. Заголовок: Продолжу? Детские во..


Продолжу? Детские вопросы. Теперь по кнопкам

1. @ 10, 636 BUTTON "Очистка списка АкцМ" SIZE 200, 32 BACKCOLOR hwg_ColorC2N(cgBackCol) COLOR hwg_ColorC2N(cgColor)
Не меняет ни цвета текста, ни фона - обычный черный на сером

2. Здесь две проблемы сразу:
@ 10, 636 OWNERBUTTON ob1 OF oMainWind ID 108 TEXT "Очистка списка АкцМ" SIZE 200, 32 BACKCOLOR hwg_ColorC2N(cgBackCol)
Это меняет фон, но текст остаётся черным

Сделал эксперимент с двумя вариантами
@ 10, 636 OWNERBUTTON ob1 OF oMainWind ID 108 TEXT "Очистка списка АкцМ" SIZE 200, 32 BACKCOLOR hwg_ColorC2N(cgBackCol) COLOR {||.T.}
@ 220,636 OWNERBUTTON ob2 OF oMainWind ID 109 TEXT "Определить алкокоды" SIZE 200, 32 BACKCOLOR hwg_ColorC2N(cgBackCol) COLOR hwg_ColorC2N(cgColor)

Выдаёт ошибки компиляции

Compiling 'OprId.prg'...

OprId.prg(56) Error E0030 Syntax error: "syntax error at '{'"

OprId.prg(57) Error E0022 Invalid lvalue: '()'

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





Пост N: 376
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 22.11.18 13:00. Заголовок: Позвольте так же зам..


Позвольте так же замечания по инструкции? Просто смотреть примеры не могу, а посему пытаюсь сделать что-то полезное...

1. Смотря какой-то пример увидел функцию hwg_Selectfile("Файл из БД УСЕга", "*.*") Захотел посмотреть, как использовать - её вообще нет в описании, начал изучать методом тыка… Оказывается она сменяет текущий каталог.

2. Решил вставить в форму EDITBOX - нужное работает. Увидел, что создаётся объект. Как его использовать - смотрю описание класса:

METHODS
New( oWndParent, nId, vari, bSetGet, nStyle, nLeft, nTop, nWidth, nHeight, ;
oFont, bInit, bSize, bGfocus, bLfocus, ctooltip, ;
tcolor, bcolor, cPicture, lNoBorder, nMaxLength, lPassword, bKeyDown, bChange )
Activate()
onEvent( msg, wParam, lParam )
Init()
Refresh()
Value( xValue ) SETGET
SelStart( nStart ) SETGET
SelLength( nLength ) SETGET
ParsePict( cPicture, vari )

Начитаю тыкаться: записать в поле, взять в поле... не получается смотрю кучу примеров, где есть editbox, в каком-то нахожу oEdit:SetText("") - значит типа вставляет текст, получилось. Как взять - с потолка пишу с:=oEdit:GetText() - получается... НО ЭТИ МЕТОДЫ ВООБЩЕ НЕ УПОМИНАЮТСЯ у класса!

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





Пост N: 377
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 22.11.18 14:00. Заголовок: Ещё ошибочка... Мне ..


Ещё ошибочка... Мне нужно в одной области ввести несколько строк. Насколько понял GET и EDITBOX это не позволяют? Нашел HCEDIT. При сборке xHarbour вылетает по ошибке компиляции

Error: Unresolved external '_HB_FUN_HB_AT' referenced from C:\XHARBOUR\LIB\PROCMISC.LIB|hcedit
Error: Unresolved external '_HB_FUN_HB_RAT' referenced from C:\XHARBOUR\LIB\PROCMISC.LIB|hcedit

В xHarbour Нет HB_At() и HB_Rat(), но есть At(), Rat() Вставив заплатку в программу:

FUNC HB_At(c,b); RETU At(c,b)
FUNC HB_RAt(c,b); RETU Rat(c,b)

Всё собралось и работает, как ожидалось...

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


Пост N: 1114
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 22.11.18 18:54. Заголовок: AndreyZh пишет: @ 1..


AndreyZh пишет:

 цитата:
@ 10, 636 BUTTON ... BACKCOLOR hwg_ColorC2N(cgBackCol) ...


В стандартной кнопке цвета не меняются, она целиком отрисовывается системой.


 цитата:
@ 220,636 OWNERBUTTON ...TEXT "Определить алкокоды" SIZE 200, 32 BACKCOLOR hwg_ColorC2N(cgBackCol) COLOR hwg_ColorC2N(cgColor)


COLOR здесь должен находиться рядом с TEXT, так определена команда:
@ 220,636 OWNERBUTTON ...TEXT "Определить алкокоды" COLOR hwg_ColorC2N(cgColor) ...

С OWNERBUTTON рекомендую использовать стили (HStyle) - см. примеры в HwGui Tutor. А чтобы стандартные контролы выглядели прилично, не забывайте прилинковывыть WindowsXP.Manifest, как в samples/bld.bat.

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


Пост N: 1115
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 22.11.18 20:03. Заголовок: AndreyZh пишет: hwg..


AndreyZh пишет:

 цитата:
hwg_Selectfile("Файл из БД УСЕга", "*.*") Захотел посмотреть, как использовать - её вообще нет в описании


?? http://www.kresin.ru/hwgdoc_functions.html#Functions1 - там в самом начале. Функции, кстати, есть в документации все. Не все с комментариями, но, по крайней мере, с параметрами и с отметкой, если только для Windows.


 цитата:
с:=oEdit:GetText() - получается... НО ЭТИ МЕТОДЫ ВООБЩЕ НЕ УПОМИНАЮТСЯ у класса!


Они унаследованы от родительского класса HControl. Кстати, лучше использовать Value():
string := oEdit:Value
oEdit:Value := string

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


Пост N: 1116
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 22.11.18 20:09. Заголовок: AndreyZh пишет: Мне..


AndreyZh пишет:

 цитата:
Мне нужно в одной области ввести несколько строк.


@ ... EDITBOX ... STYLE ES_MULTILINE - стандартный edit контрол. А HCEdit - более навороченный.
А hb_at(), hb_rat(), действительно, надо будет переопределить через #ifdef __XARBOUR__

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





Пост N: 378
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 23.11.18 08:16. Заголовок: Спасибо Александр за..


Спасибо Александр за ответы! Буду разбираться дальше...

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





Пост N: 379
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 28.11.18 10:54. Заголовок: Добрый день Александ..


Добрый день Александр! Появилось время посмотреть и сразу кучка непоняток

[img]https://storage.olegon.ru/supermag/ЕГАИС%20и%20УТМ/errhwgui1.jpg[/img]

#include "windows.ch"
#include "guilib.ch"
#define CRLF (CHR(13)+CHR(10))
#define TRUE .T.
#define FALSE .F.

// Мои любимые команды

#xcommand FOR <i>:=<s> TO <n> DO <*statement*> =>;
FOR <i>:=<s> TO <n> ; <statement> ; END
#xcommand IF <cond> THEN <*statement*> =>;
IF <cond> ; <statement>; ENDIF
#xcommand DEFAULT <p> TO <v> [, <p2> TO <v2> ] => ;
<p> := IF(<p> == NIL, <v>, <p>) ;
[; <p2> := IF (<p2> == NIL, <v2>, <p2>) ]

// Список настраиваемых цветов программы
STAT cgBackCol := "000033" // Фон для контролов
STAT cgColor := "ffff99" // Шрифт для контролов
STAT cgCodePage := "RU866" // Кодовая страница внешних Dbf файлов

// Глобальные для программы переменные, вызываемые из разных процедур
STAT oBitmap // Картинка QR кода отражаемая на экране
STAT oBtmp // Объект BITMAP
*STAT oEdit // Объект преобразуемого кода

* --------------------------------------------------------------------------------------------------
* Освоение окон и меню
PROC Main()
LOCA nWidthScr := hwg_GetDesktopWidth() // Ширина экрана в пикселах.
LOCA nHeightScr := hwg_GetDesktopHeight() // Высота экрана в пикселах.
LOCA nwW:=0, nwH:=0, nbW:=0, nbH:=0, nControl:=0, nTop:=0
LOCA oFont, oArial, oeW, oeH
LOCA oIcon:= HIcon():AddFile("Bob.ico")
PRIV oEdit

// Даю стартовую картинку. При вводе знаков генерации QR кода она будет перерисовываться
oBitmap := HBitmap():AddFile("Zhdun.bmp")

PREPARE FONT oFont NAME "MS Sans Serif" WIDTH 0 HEIGHT -13
PREPARE FONT oArial NAME "Arial Cyr" WEIGHT 700 HEIGHT -12

// Инициализация главного окна - размер в половину экрана

// Размеры главного окна - позиционирование других контролов
nwW := Int(nWidthScr/2) // Ширина окна
nwH := Int(nHeightScr/2) // Высота окна
INIT WINDOW oMainWind MAIN;
TITLE " Ввод, отражение в главном окне и печать QR кода";
ICON oIcon FONT oFont;
AT 1,1 SIZE nwW,nwH BACKCOLOR hwg_ColorC2N("cccccc")

oMainWind:Center() // Центрирую окно

// Расчет размера картинки в четверть исходного окна
nbW := Int(nwW/4)
nbH := Int(nwH/4)

// Рисую картинку по центру в половину окна - команда растягивает на всю указанную область - это лучше, чем фон окна
@ Int(nWidthScr/5.6),Int(nHeightScr/7) BITMAP oBitmap ID 1001 SIZE nbW, nbH ON CLICK {||pDemo()}

*********************
* Правильно ли понимаю, что ряд команд не "возвращает" объект и его приходится определять через опу

// Определяю глобальный объект контрола из потокового автоматического добавления в массив контролов
nControl := Len(oMainWind:aControls)
oBtmp := oMainWind:aControls[nControl]

********************
* Криво отражается обрамление на W10 что видно на скрине
oBtmp:nBorder := 10

//*** Добавляю контролы для ввода информации и кнопки, вызывающие действия над картинкой QR кода

// Координаты верхней линии объектов
nTop := nwH - 70

// Область ввода преобразуемых знаков
@ 10,nTop-26 SAY "Внесите знаки: " FONT oArial SIZE 200, 26 BACKCOLOR hwg_ColorC2N("cccccc")
* @ 106,nTop-30 EDITBOX oEdit SIZE 390, 56 ON LOSTFOCUS {||lChBitmap()} STYLE ES_MULTILINE
@ 106,nTop-30 EDITBOX oEdit SIZE 390, 56 STYLE ES_MULTILINE

@ 10,nTop BUTTON "Показать" SIZE 80, 26 ON CLICK {||lChBitmap()}


// Активируются все объекты окна и ожидание события
**************************
* Вылет при выполнеии
* oEdit:SetFocus()
* Error BASE/1004 Class: 'NIL' has no exported method: SETFOCUS

ACTIVATE WINDOW oMainWind
RETU

* --------------------------------------------------------------------------------------------------
* При вводе знаков генерации QR кода, а точнее при потере фокуса на EDIT она будет перерисовываться
FUNC lChBitmap()
* LOCA cTxt:="17N00000ABLPONIUZUK05Z0212110060000251417714923913814124721320664222"
LOCA cPict:="" // cTxt:=Alltrim(oEdit:value)

***********************************************
* Вылет при любой ссылки на объект oEdit при любом назначении, что PRIV, что STAT
LOCA cTxt:=Alltrim(MEMV->oEdit:GetText())
hwg_Msginfo(cTxt)

// Не преобразую, если ничего не введено
IF Empty(cTxt) THEN RETU .F.

// Создаю новый файл картинки QR кода и перегружаю его в объект
cPict := cQRGen(cTxt,"","qr.bmp")
* hwg_Msginfo(cPict)
* MEMV->oBtmp:Release()
* MEMV->oBitmap := HBitmap():AddFile(cPict)
* MEMV->oBtmp:Refresh()
RETU .F.

* --------------------------------------------------------------------------------------------------
* Процедура заглушка для разрабатываемых режимов
PROC pDummy()
RETU

* --------------------------------------------------------------------------------------------------
* Проверка переданных параметров
PROC pDemo()
LOCA nW:=hwg_GetDesktopWidth(), nH:=hwg_GetDesktopHeight()
* LOCA nwW:=oMainWind:Width, nwH:=oMainWind:Height

* hwg_Msginfo("Ширина экрана: "+Str(nW)+" высота экрана: "+Str(nH)+CRLF+"Ширина окна: "+Str(nwW)+" высота окна: "+Str(nwH))
hwg_Msginfo("Ширина экрана: "+Str(nW)+" высота экрана: "+Str(nH)+CRLF+"Количество контролов: "+Str(Len(oMainWind:aControls)))
RETU

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





Пост N: 380
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 28.11.18 11:10. Заголовок: Заменил EDITBOX на ..


Начал пробовать EDITBOX по Вашему совету. Сейчас заменил EDITBOX на
@ 106,nTop-30 HCEDIT oEdit1 SIZE 390, 56 ON LOSTFOCUS {||cgTxt:=oEdit1:GetText(), lChBitmap(), .F.}

Объект oEdit1 стал везде виден

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





Пост N: 381
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 28.11.18 13:43. Заголовок: Так же работает конс..


Так же работает конструкция:
STAT oGet
Proc Main()
….
@ 106,nTop-30 GET oGet VAR cgTxt STYLE ES_MULTILINE SIZE 390, 56

и даже так работает, как ожидается:
@ 106,nTop-30 GET oGet VAR cgTxt SIZE 390, 56 VALID {||lChBitmap()} STYLE ES_MULTILINE

FUNC lChBitmap()
hwg_Msginfo(oGet:Value)

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


Пост N: 1117
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 28.11.18 14:12. Заголовок: Как я понял, проблем..


Как я понял, проблемы три:

1) * Правильно ли понимаю, что ряд команд не "возвращает" объект и его приходится определять через опу

Неправильно). В данном случае вместо:

@ ... BITMAP oBitmap ID 1001 SIZE nbW, nbH ON CLICK {||pDemo()}

надо

@ ... BITMAP oBtmp SHOW oBitmap ID 1001 SIZE nbW, nbH ON CLICK {||pDemo()}

2) с EDITBOX и oEdit
Здесь аналогично, должно быть:

@ 106,nTop-30 EDITBOX oEdit CAPTION ""

иначе, если как вас, oEdit воспринимается как CAPTION - см. соответствующую команду в документации, или в guilib.sh

3) border - это надо посмотреть.

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





Пост N: 382
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 28.11.18 14:18. Заголовок: Спасибо! Ещё раз поч..


Спасибо! Ещё раз почитаю мануал и попробую... Кстати @ x,y,GET не нашел в описаниях - смотрел по *.ch

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


Пост N: 1118
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 28.11.18 15:31. Заголовок: AndreyZh пишет: Кст..


AndreyZh пишет:

 цитата:
Кстати @ x,y,GET не нашел в описаниях


http://www.kresin.ru/hwgdoc_commands.html#Commands4
И в doc/hwgdoc_commands.html в том же месте.

С border разобрался, исправил.

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





Пост N: 383
Зарегистрирован: 12.11.06
ссылка на сообщение  Отправлено: 28.11.18 16:09. Заголовок: alkresin пишет: И в..


alkresin пишет:

 цитата:
И в doc/hwgdoc_commands.html в том же месте



Вы пополняете документацию быстрее, чем я скачиваю от туда информацию... клянусь, что 2 недели назад этого раздела не было... Первый учебный пример вроде бы заработал, как хочу и многим, как утилитка может полезна "просмотр и печать в любом размере QR кодов". Исходник могу разместить, но он использует стороннюю DLL, а так скачать всё можно Программа формирования QR кодов

З.Ы. Ждите повышения "интереса" к Вашей разработке, а когда у меня будет время - продолжу освоение?

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


Пост N: 1119
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 28.11.18 16:58. Заголовок: AndreyZh пишет: Вы ..


AndreyZh пишет:

 цитата:
Вы пополняете документацию быстрее, чем я скачиваю от туда информацию... клянусь, что 2 недели назад этого раздела не было...


Был. Клясться не буду, но честное слово дам.

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



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 02.12.18 15:53. Заголовок: Ошибка сборки Harbour 3.2 + BCC 551+ HWGUI 2.21 b5


orland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
test.c:
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external '_hb_extIsNil' referenced from C:\HARBOUR\LIB\HWGUI.LIB|window
Error: Unresolved external '_hb_itemEqual' referenced from C:\HARBOUR\LIB\HWGUI.LIB|drawtext

каталоги c:\harbour ( в папки include и lib добавлены файлы из hwgui 2.21)
c:\bcc

в примере модуль а.prg ком. файл cld.bat так-же ошибка

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

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