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




Пост N: 699
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 29.01.08 13:59. Заголовок: Новая версия Расширенного релиза библиотеки MiniGUI (часть VI ) (продолжение)


Начало темы находится здесь, а теперь

АНОНС * АНОНС * АНОНС * АНОНС * АНОНС

Готовится к опубликованию новая сборка №48, которая выйдет в конце недели.
Если у Вас есть интересные наработки для включения в новый релиз, то сейчас самое удобное время для их отправки мне

Кратко, что нового:

- исправление обнаруженных ошибок и неточностей кода;
- новый класс HEADERIMAGE для Grid и Browse;
- свойство Address в Hyperlink может теперь открывать папку или файл на диске;
- добавлен NOTABSTOP класс для Browse;
- поддержка пользовательских компонентов (заимствована из оффициального релиза);
- расширения и исправления в библиотеках TsBrowse и PropGrid;
- обновлены сборки Харбор и HMGS-IDE;
- новые и обновленные старые примеры (как обычно ).




Спасибо: 5 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]


gfilatov2002
moderator




Пост N: 1016
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 19.10.16 21:37. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Инсталляторы для других Си-компиляторов обновлю позже


Выложил исталляторы сборки 16.10 для остальных Си-компиляторов (прямые ссылки есть на сайте библиотеки).

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




Пост N: 5143
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.10.16 12:21. Заголовок: Привет всем. На ново..


Привет всем.
На новой версии перестала работать команда:
DEFINE BKGBRUSH newBrush PATTERN IN Form_9 BITMAP MyPASS48
Выдаёт ошибку:
Tbrws_Test.prg(219) Error E0030 Syntax error "syntax error at 'PICTURE'"


При сборке примера SAMPLES\Advanced\TsBrowse и SAMPLES\Applications\SysInfo тоже выдаёт ошибку:
TestXls.prg(36) Error E0030 Syntax error "syntax error at 'BITMAP'"
и
SysInfo.prg(229) Error E0030 Syntax error "syntax error at 'BITMAP'"


Это видел:
* Changed: DEFINE BKGBRUSH command supports a reduced format now, i.e.
- <DEFINE | CREATE> BKBRUSH <brush> [ STYLE ] PATTERN ;
IN [ FORM | WINDOW ] <parent> PICTURE <image>
- ADD BKBRUSH <brush> [ STYLE ] PATTERN ;
TO [ FORM | WINDOW ] <parent> PICTURE <image>

Замена на PICTURE:
DEFINE BKGBRUSH Brush_1 PATTERN IN Form_1 PICTURE Skin\background.bmp
ошибку не убирает...



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




Пост N: 1017
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 20.10.16 12:42. Заголовок: Andrey пишет: На но..


Andrey пишет:

 цитата:
На новой версии перестала работать команда


Эта команда уже работает в исправленной сборке 16.10
Надо просто еще раз скачать и установить эту сборку заново...


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




Пост N: 5144
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.10.16 13:39. Заголовок: Да, в исправленной в..


Да, в исправленной версии ошибка ушла ! Спасибо !
Но теперь потерялась функция:
//DEFINE BKGBRUSH newBrush PATTERN IN &cFormName PICTURE cResFon // заливка фоном
newBrush := SetWndBrush( cFormName, .F., 3, NIL, NIL, cResFon )
при сборке выдаёт:
Error: Unresolved external '_HB_FUN_SETWNDBRUSH' referenced from W:\HB_PROJECT\....


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




Пост N: 1018
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 20.10.16 13:50. Заголовок: Andrey пишет: Но те..


Andrey пишет:

 цитата:
Но теперь потерялась функция


Она была переименована Петром в _SetWindowBKBrush() и является внутренней функцией.
Т.е. прямое ее использование не рекомендуется, для этого есть соответствующая команда

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


Пост N: 1310
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 20.10.16 14:06. Заголовок: Andrey пишет: Замен..


Andrey пишет:

 цитата:
Замена на PICTURE:
DEFINE BKGBRUSH Brush_1 PATTERN IN Form_1 PICTURE Skin\background.bmp
ошибку не убирает..



Ошибка в changelog

Смотрите обновленный синтаксис в i_brush.ch
#xtranslate <dummy: CREATE,DEFINE> <dummy1: BKBRUSH,BKGBRUSH> <brush> ; 
[ STYLE ] <style: SOLID,HATCHED,PATTERN> ;
[ [ HATCHSTYLE ] <hatch> ] ;
[ <dummy3: BITMAP,IMAGE,PICTURE> <bitmap> ] ;
[ COLOR <aColor> ] ;
[ <nodelete: NODELETE> ] ;
[ IN [ <dummy2: FORM,WINDOW> ] <window> ] ;
=>

и базовый пример
SAMPLES\BASIC\WindowBackground\demo.prg
SAMPLES\BASIC\WindowBackground_2\demo.prg тоже м.б. интересным


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




Пост N: 5145
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.10.16 18:43. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Т.е. прямое ее использование не рекомендуется, для этого есть соответствующая команда



Понял. Давно сделал, так и использовал в некоторых исходниках.

Петр пишет:

 цитата:
и базовый пример
SAMPLES\BASIC\WindowBackground\demo.prg



Поиск по DEFINE BKGBRUSH дал только 2 примера.
А пример смотрел, там по другому уже.
По синтаксису - понравилось лучше.
Только в пример BASIC\WindowBackground_2\demo.prg нужно бы поставить кнопку смены заливки на лету !

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


Пост N: 1313
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 20.10.16 19:22. Заголовок: Andrey пишет: Тольк..


Andrey пишет:

 цитата:
Только в пример BASIC\WindowBackground_2\demo.prg нужно бы поставить кнопку смены заливки на лету !



Суть примера в применении классов CURSOR, BKBRUSH при создании окна (DEFINE WINDOW).
Все остальное "рюшечки" - и кнопка, и таймер, и генератор псевдо-случайных чисел - все это, как правило, лишь отвлекает от сути.

И да, писать качественные, содержательные примеры - это нужно уметь, у меня не всегда получается.

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




Пост N: 5146
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.10.16 23:11. Заголовок: Петр пишет: Все ост..


Петр пишет:

 цитата:
Все остальное "рюшечки" - и кнопка, и таймер, и генератор псевдо-случайных чисел - все это, как правило, лишь отвлекает от сути.


Не всегда. Юзерам нравятся не унылые серые формы, а симпатичные.

А кнопка смены заливки формы позволяет понять разработчику - как можно делать смену обоев на "лету" в окне.
Я в своё время очень помучился с этим. Не помню уже чем и закончилось.
И смена заливки тоже можно использовать для задачи - четко показывать юзеру смену задачи или меню.

Петр пишет:

 цитата:
И да, писать качественные, содержательные примеры - это нужно уметь, у меня не всегда получается.


Классно получается ! Что интересно, всегда спросим !


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




Пост N: 5147
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 21.10.16 01:13. Заголовок: Теперь в новой верси..


Теперь в новой версии при выходе из моей программы получаю ошибку:
Error BASE/0 MiniGUI Err.: _ONDESTROYMENU
Called from _ONDESTROYMENU(0)
Called from RELEASEALLWINDOWS(2127)
Called from _RELEASEWINDOW(2196)
Called from DOMETHOD(4739)
Called from MYEXIT(462)
Called from (b)METRO_BUTTON(369)


Строка 462:
Form_Main.Release

или выход из программы нужно делать всегда через - RELEASE WINDOW ALL ?

Хотя поставил RELEASE WINDOW ALL - тоже выдаёт такую же ошибку.

Откатился на 16.09 - ошибки нет.


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


Пост N: 1314
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 21.10.16 01:40. Заголовок: Andrey пишет: Form_..


Andrey пишет:

 цитата:
Form_Main.Release



Form_Main содержит меню или нет ?

Andrey пишет:

 цитата:
Called from RELEASEALLWINDOWS(2127)



h_windows.prg замените сл. фрагмент
 
IF IsExtendedMenuStyleActive()
_OnDestroyMenu ( GetMenu ( _HMG_MainHandle ) ) // Release OwnerDraw Main Menu
ENDIF

на
 
...
LOCAL hMenu
...
hMenu := GetMenu ( _HMG_MainHandle )
IF IsExtendedMenuStyleActive() .AND. IsMenu( hMenu )
_OnDestroyMenu ( hMenu ) // Release OwnerDraw Main Menu
ENDIF


и, конечно, перекомпилируйте библиотеку


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


Пост N: 1315
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 21.10.16 01:42. Заголовок: Andrey пишет: Отка..


Andrey пишет:

 цитата:

Откатился на 16.09 - ошибки нет.



Видишь суслика? — Нет. — И я не вижу. А он есть!

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




Пост N: 1019
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 21.10.16 10:52. Заголовок: Петр пишет: h_windo..


Петр пишет:

 цитата:
h_windows.prg замените сл. фрагмент


Благодарю за помощь
Добавил эту поправку в следующую сборку

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




Пост N: 5148
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 21.10.16 12:32. Заголовок: Петр пишет: Видишь ..


Петр пишет:

 цитата:
Видишь суслика? — Нет. — И я не вижу. А он есть!



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




Пост N: 1242
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.10.16 10:28. Заголовок: gfilatov2002 Можно ..


gfilatov2002
Можно маленькую правку в TsBrowse
 
METHOD LoadFields( lEditable ) CLASS TSBrowse
...
line: 7171
ElseIf cType == "D"
cData := cValToChar( If( ! Empty( cData ), cData, Date() ) )
nSize := Int( GetTextWidth( 0, cData + " " , hFont ) ) + If( lEditable, 22, 0 )
ElseIf cType == "M"
...
приходится постоянно править таким
a := {}; AEval(oBrw:aColumns, {|oCol,nCol,val| val := Eval(oCol:bData), ;
iif(Valtype(val)=="D", AAdd(a, nCol), ) })
i := Int( GetTextWidth( 0, " ", oBrw:hFont ) )
AEval(a, {|nCol| oBrw:aColumns[ nCol ]:nWidth += i } )
что бы дата и линии Tcb не наезжали друг на друга в колонке



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




Пост N: 5152
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 25.10.16 14:11. Заголовок: SergKis пишет: Можн..


SergKis пишет:

 цитата:
Можно маленькую правку в TsBrowse


Поддерживаю. Меня тоже это раздражает.

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




Пост N: 6063
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.10.16 14:22. Заголовок: Совсем не обязательн..


Совсем не обязательно править сырец
Делаю примерно так
obrw:GetColumn("naim"):bPrevEdit := { |a, b, lLock| SetGetAdjustBrw(b,{2,0,-2,-3})...............

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




Пост N: 5153
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 25.10.16 14:26. Заголовок: Dima пишет: Совсем ..


Dima пишет:

 цитата:
Совсем не обязательно править сырец


Таблица по умолчанию должна быть правильной и красивой, без срезки колонок (как сейчас дата срезана) и т.д.
Каждый раз не на исправляешься. Допилить всё можно, только времени своего жалко.

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




Пост N: 1243
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.10.16 14:49. Заголовок: Dima пишет Делаю при..


Dima пишет
 цитата:
Делаю примерно так
obrw:GetColumn("naim"):bPrevEdit := { |a, b, lLock| SetGetAdjustBrw(b,{2,0,-2,-3})...............


дело не в корректировке, на этапе отображения даты в колонки, правая цифра частично под линией

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




Пост N: 6064
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.10.16 14:50. Заголовок: SergKis пишет: дело..


SergKis пишет:

 цитата:
дело не в корректировке


Точно. Сразу не сообразил

Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 274
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет