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




Пост 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 
ПрофильЦитата Ответить
Ответов - 206 , стр: 1 2 3 4 5 6 7 8 9 10 11 All [только новые]





Пост N: 2189
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.02.19 08:12. Заголовок: PPS ON DBLCLICK (Thi..


PPS
ON DBLCLICK (ThisWindow.Object):Post(12, This.Text_8.Index) ; //DublClick2Get() ;
Такая форма записи, а не This.Index, исп. по причине отсутствия инф. о контроле, т.к. блок кода выполняется в TGET.
Переданный индекс контрола, в событии создает среду This для указанного контрола.
Если не передавать индекс, то среда This будет только для окна

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



Пост N: 2190
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.02.19 15:35. Заголовок: gfilatov2002 можно ..


gfilatov2002
 
можно зарезервировать для исп. в событиях о Петра
MESSAGEONLY _App_Wnd_App_ EVENTS _App_Wnd_Events_ TO h
и
METHOD PostMsg( nKey, nPar ) INLINE PostMessage( ::hWnd, WM_APP_LAUNCH, nKey, hb_defaultValue( nPar, 0 ) )
METHOD SendMsg( nKey, nPar ) INLINE SendMessage( ::hWnd, WM_APP_LAUNCH, nKey, hb_defaultValue( nPar, 0 ) )

#define WM_WND_LAUNCH (WM_USER+1044)
#define WM_CTL_LAUNCH (WM_USER+1045)
#define WM_APP_LAUNCH (WM_USER+1046)



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



Пост N: 2191
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.02.19 17:43. Заголовок: gfilatov2002 Исправл..


gfilatov2002
Исправление, что бы в приоритете был индекс контрола, потом handle (было наоборот)
 
METHOD DoEvent ( Key, nHandle ) CLASS TWndData

LOCAL o := Self
LOCAL i := o:Index
LOCAL w := o:IsWindow
LOCAL p := o:oParam:Get(Key)

IF ! Empty( nHandle )
IF nHandle > 0 .and. nHandle <= Len( _HMG_aControlHandles ) // control index

IF hmg_IsWindowObject( _HMG_aControlHandles[ nHandle ] )
o := hmg_GetWindowObject( _HMG_aControlHandles[ nHandle ] )
i := o:Index
w := o:IsWindow
ELSE
i := nHandle
w := .F.
ENDIF
ELSEIF hmg_IsWindowObject( nHandle ) // control handle

o := hmg_GetWindowObject( nHandle )
i := o:Index
w := o:IsWindow
ENDIF
ENDIF

IF w
RETURN Do_WindowEventProcedure ( ::oEvent:Get( Key ), i, o, Key, p )
ENDIF

RETURN Do_ControlEventProcedure( ::oEvent:Get( Key ), i, o, Key, p )


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



Пост N: 2192
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.02.19 20:02. Заголовок: gfilatov2002 Еще, из..


gfilatov2002
Еще, измените код, а то мелькает в левом верхнем углу
 
FUNCTION HMG_Alert( cMsg, aOptions, cTitle, nType, cIcoFile, nIcoSize )
...
DEFINE WINDOW oDlg WIDTH 0 HEIGHT 0 ;
TITLE cTitle ;
MODAL NOSIZE

// ON INIT FillDlg( cMsg, aOptions, nLineas, cIcoFile, nIcoSize )

END WINDOW

FillDlg( cMsg, aOptions, nLineas, cIcoFile, nIcoSize )

ACTIVATE WINDOW oDlg
...


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




Пост N: 1424
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 03.02.19 20:39. Заголовок: SergKis пишет: можн..


SergKis пишет:

 цитата:
можно зарезервировать


Cделал

SergKis пишет:

 цитата:
что бы в приоритете был индекс контрола


Принято

SergKis пишет:

 цитата:
мелькает в левом верхнем углу


Благодарю за помощь!

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



Пост N: 2193
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.02.19 22:23. Заголовок: gfilatov2002 пишет С..


gfilatov2002 пишет
 цитата:
Сделал


Спасибо.
Вот что получилось с примером (h_objects.prg свежий) https://my-files.ru/v1kc9m

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



Пост N: 2194
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 04.02.19 09:59. Заголовок: gfilatov2002 Предло..


gfilatov2002
Предложение.
Вынести за скобки #ifdef _OBJECT_ процедуры
1.
FUNCTION Do_WindowEventProcedure( bBlock, i, p1, p2, p3, p4 )
FUNCTION Do_ControlEventProcedure( bBlock, i, p1, p2, p3, p4 )
 
2.
#command ACTIVATE WINDOW <name, ...> [ <nowait: NOWAIT> ] ;
[ INIT <bInit> ] ;
=> ;
_ActivateWindow ( \{<(name)>\}, <.nowait.>, , <{bInit}> )

#command ACTIVATE WINDOW ALL [ INIT <bInit> ] ;
=> ;
_ActivateAllWindows ( <{bInit}> )
3.
*-----------------------------------------------------------------------------*
FUNCTION _ActivateWindow ( aForm, lNoWait, lDebugger, bInit )
*-----------------------------------------------------------------------------*
...
* Look For Main Window
FOR EACH FormName IN aForm

i := GetFormIndex ( FormName )

IF HB_ISBLOCK( bInit )
Do_WindowEventProcedure( bInit, i, 'WINDOW_ACTIVATE' )
ENDIF

IF _HMG_aFormType [ i ] == 'A'
MainFound := .T.
EXIT
ENDIF

NEXT
...
*-----------------------------------------------------------------------------*
FUNCTION _ActivateAllWindows ( bInit )
*-----------------------------------------------------------------------------*
...
AAdd ( aForm, MainName )

_ActivateWindow ( aForm, , , bInit )

RETURN NIL
...
Использовать после END WINDOW среду This.
Form_1.Center // Form_1.Activate

ACTIVATE WINDOW Form_1 INIT _logfile(.T., This.Name, _HMG_Value())
...


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



Пост N: 2195
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 04.02.19 11:05. Заголовок: gfilatov2002 Правка..


gfilatov2002
Правка.
 
CLASS TDlu2Pix
...
ASSIGN Handle( hWnd ) INLINE ( ::hWnd := hWnd, ::lError := Empty( hWnd ), ;
iif( ::lError, MsgMiniGuiError("Application events are not created !"), ) )

ACCESS IsError INLINE ::lError
ACCESS Wm_nApp INLINE WM_APP_LAUNCH
ACCESS IsMsg INLINE ( ::lAction .and. ! ::lError )

...
METHOD Post ( nKey, nPar, xPar ) INLINE ::PostMsg( nKey, nPar, xPar )
METHOD PostMsg( nKey, nPar, xPar ) INLINE ( nPar := hb_defaultValue(nPar, 0), ;
iif( ::IsMsg, ( ::oParam:Set( nKey, xPar ), ;
PostMessage( ::hWnd, ::Wm_nApp, nKey, nPar ) ), Nil ) )
METHOD Send ( nKey, nPar, xPar ) INLINE ::SendMsg( nKey, nPar, xPar )
METHOD SendMsg( nKey, nPar, xPar ) INLINE ( nPar := hb_defaultValue(nPar, 0), ;
iif( ::IsMsg, ( ::oParam:Set( nKey, xPar ), ;
SendMessage( ::hWnd, ::Wm_nApp, nKey, nPar ) ), Nil ) )
...


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




Пост N: 1425
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 04.02.19 11:27. Заголовок: SergKis пишет: Пред..


SergKis пишет:

 цитата:
Предложение.


Сделал, конечно.
Только изменил кодовое слово INIT на ON INIT

SergKis пишет:

 цитата:
Правка


Благодарю за помощь

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



Пост N: 2196
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 04.02.19 11:33. Заголовок: gfilatov2002 Еще, е..


gfilatov2002
Еще, если добавить
 
CLASS TWndData
...
ACCESS App INLINE ::oApp

ACCESS AO INLINE ::oApp:oCargo
ACCESS AP INLINE ::oApp:oProp

...
можно писать короче
WITH OBJECT This.Object
:O:BColorGet := :AO:BColorGet // (App.Object):O:BColorGet
:O:FColorGet := :AO:FColorGet // (App.Object):O:FColorGet
:O:FColor1 := :AO:FColor1 // (App.Object):O:FColor1
:O:FColor2 := :AO:FColor2 // (App.Object):O:FColor2


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




Пост N: 1426
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 04.02.19 11:39. Заголовок: SergKis пишет: ..


SergKis пишет:

 цитата:

ACCESS AO INLINE ::oApp:oCargo
ACCESS AP INLINE ::oApp:oProp


OK

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



Пост N: 2197
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 04.02.19 11:39. Заголовок: gfilatov2002 Пропус..


gfilatov2002
Пропустил строки
 
CLASS TDlu2Pix
...
ACCESS IsMsg INLINE ( ::lAction .and. ! ::lError )

ACCESS Action INLINE ::lAction
ASSIGN Action( lAction ) INLINE ::lAction := !( Empty( lAction ) )
...


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




Пост N: 1427
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 04.02.19 11:42. Заголовок: SergKis пишет: ..


SergKis пишет:

 цитата:
ACCESS Action INLINE ::lAction
ASSIGN Action( lAction ) INLINE ::lAction := !( Empty( lAction ) )


OK

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



Пост N: 2198
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 05.02.19 08:25. Заголовок: gfilatov2002 Неболь..


gfilatov2002
Небольшая правка
 
CLASS TDlu2Pix
...
METHOD Event( Key, Block, p2, p3 ) INLINE iif( HB_ISBLOCK( Block ), ;
::oEvent:Set( Key, Block ), ;
( Block := hb_defaultValue(Block, ::oParam:Get( Key)), ;
::oEvent:Do ( Key, Block, p2, p3 ) ) )
...

и пример https://my-files.ru/em7ci6

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




Пост N: 1428
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 05.02.19 11:38. Заголовок: SergKis пишет: Небо..


SergKis пишет:

 цитата:
Небольшая правка


Добавил
Но модуль h_objects.prg в Вашем примере - без последних изменений

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



Пост N: 2199
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 05.02.19 11:52. Заголовок: gfilatov2002 Сори, ..


gfilatov2002
Сори, забыл заменить. Тут https://my-files.ru/42c6pn

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



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


gfilatov2002
Можно добавить Скрытый текст

Пример https://my-files.ru/nljgq8

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




Пост N: 1429
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 08.02.19 11:06. Заголовок: SergKis пишет: Можн..


SergKis пишет:

 цитата:
Можно добавить


OK

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



Пост N: 2205
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 08.02.19 22:14. Заголовок: gfilatov2002 Мысли ..


gfilatov2002
Мысли вслух. Если вынести oDlu2Pixel(...) и класс TDlu2Pix за скобки #ifdef _OBJECT_, то можно Скрытый текст


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



Пост N: 2206
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 08.02.19 22:23. Заголовок: PS Оборвалась переда..


PS
Оборвалась передача, пропала ссылка на пример с указанными изменениями
Пример тут https://my-files.ru/2iogvt

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

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