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 
Профиль
Новых ответов нет , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [см. все]


gfilatov2002
moderator




Пост N: 1857
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 28.04.21 09:41. Заголовок: Как и обещал, выложи..


Как и обещал, выложил 3-е обновление сборки 21.03 с учетом всех последних исправлений

Рассматриваю эту сборку как финальную по причинам, которые неоднократно озвучивались ранее (слабый интерес и отсутствие поддержки).

Спасибо: 1 
Профиль
krutoff





Пост N: 202
Зарегистрирован: 17.10.05
ссылка на сообщение  Отправлено: 28.05.21 14:25. Заголовок: _SetStatusItemWidth


Проверил псевдофункцию _SetStatusItemWidth из файла i_status.ch - она не работает.
Отработала процедура PROCEDURE _SetStatusWidth ( ParentForm , Item , Size ) файла h_controlmisc.prg

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





Пост N: 320
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 29.05.21 11:24. Заголовок: В уникодной версии п..


В уникодной версии пытаюсь вывести значение из базы, где оно записано в кодировке 1251

HB_STRTOUTF8(ALLTRIM(BASECONFIG->NAME2))

Показывает ерунду.

А так - HB_STRTOUTF8('проба') нормально показывает.

Пытался второй параметр HB_STRTOUTF8() прописывать, что ни пробовал, ничего не вышло.

Можно, конечно, саму базу под UTF8 переделать, но интересно, почему здесь не работает.

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




Пост N: 3738
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 29.05.21 11:32. Заголовок: rvu HB_STRTOUTF8(AL..


rvu
HB_STRTOUTF8(ALLTRIM(BASECONFIG->NAME2), "RU1251")

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





Пост N: 321
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 29.05.21 11:54. Заголовок: SergKis При компил..


SergKis

При компиляции выдает ощибку. Причем, со словом "проба" тоже. Неверный аргумент.

Подумал, что HB_STRTOUTF8('проба') это неверно, у меня же текст программы уникодный. Что и куда она перекодирует?
Написал HB_STRTOUTF8(HB_UTF8TOSTR('проба')) и даже HB_UTF8TOSTR('проба'). Текст, написанный в программе она никак никуда не меняет.

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




Пост N: 3739
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 29.05.21 12:02. Заголовок: Ранее уже выкладывал..


Ранее уже выкладывал пример unicode, повторю
тут https://TransFiles.ru/2f2l2

Спасибо: 1 
Профиль
rvu





Пост N: 322
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 29.05.21 12:14. Заголовок: SergKis Отлично! С..


SergKis

Отлично! Спасибо!

К сожалению эти примеры долго не живут, упустил я его в прошлый раз.

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




Пост N: 3740
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 29.05.21 13:21. Заголовок: PS чуток поправить н..


PS
чуток поправить надо (колонку вставил, а в отчетах не поправил)
 
*-----------------------------------------------------------------------------*
STATIC FUNC Report( oWnd, nEvent )
*-----------------------------------------------------------------------------*
...
LOCAL cNam := oBrw:aColumns[ nEvent+oBrw:nColumn("MARRIED") ]:cHeading
...


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





Пост N: 323
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 29.05.21 16:23. Заголовок: Вызывал раньше из св..


Вызывал раньше из своей основной программы другую, которую закрывал такой функцией:

#define WM_CLOSE 0x0010

FUNCTION CloseIt()
PARAMETERS closeDoc

LOCAL hWnd := FindWindowEx( ,,, Substr(closeDoc,2,LEN(closeDoc)-2) )

IF IsWindowHandle( hWnd )
PostMessage( hWnd, WM_CLOSE, 0, 0 )
Return .T.
ENDIF

Return .F.

После перехода на уникод перестало работать, IsWindowHandle( hWnd ) возвращает .F.
хотя тайтл окна правильный. Попробовал hb_utf8Substr, не помогло, да и вряд ли могло бы, у меня в тайтле только английские буквы и числа и пробел между ними.

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




Пост N: 3741
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 29.05.21 19:23. Заголовок: попробуйте EnumWindo..


попробуйте EnumWindows()
в примерах есть использование, поищите

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




Пост N: 7374
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 29.05.21 19:57. Заголовок: rvu пишет: После пе..


rvu пишет:

 цитата:
После перехода на уникод перестало работать, IsWindowHandle( hWnd ) возвращает .F.


А что именно возвращается в hWnd в уникодной версии ?

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




Пост N: 3742
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 29.05.21 20:13. Заголовок: Dima пишет Наверно ..


Dima пишет
 цитата:
А что именно возвращается в hWnd в уникодной версии ?


Наверно 0 (не найдено), т.к. ф-я
 
HB_FUNC( FINDWINDOWEX )
{
#ifndef UNICODE
LPCSTR lpszClass = ( char * ) hb_parc( 3 );
LPCSTR lpszWindow = ( char * ) hb_parc( 4 );
#else
LPWSTR lpszClass = AnsiToWide( ( char * ) hb_parc( 3 ) );
LPWSTR lpszWindow = AnsiToWide( ( char * ) hb_parc( 4 ) );
#endif
HB_RETNL( ( LONG_PTR ) FindWindowEx( ( HWND ) HB_PARNL( 1 ), ( HWND ) HB_PARNL( 2 ), lpszClass, lpszWindow ) );

#ifdef UNICODE
hb_xfree( lpszClass );
hb_xfree( lpszWindow );
#endif
}

Через EnumWindows() можно получить весь список hWnd, title и ClassName

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





Пост N: 324
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 30.05.21 10:51. Заголовок: Dima пишет: А что и..


Dima пишет:

 цитата:
А что именно возвращается в hWnd в уникодной версии ?



SergKis пишет:

 цитата:
Наверно 0



Да, 0.

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




Пост N: 7375
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 30.05.21 20:23. Заголовок: SergKis пишет: попр..


SergKis пишет:

 цитата:
попробуйте EnumWindows()


Это конечно вариант , но с другой стороны если "сломали" работающую функцию
FindWindowEx в уникодной версии , то надо бы починить.

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




Пост N: 3743
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 30.05.21 21:36. Заголовок: Dima пишет то надо б..


Dima пишет
 цитата:
то надо бы починить.


С этим никто не спорит. Понятно , что для unicode перелопачено много текста и отладка требуется.
Попробовал ф-ю EnumWindows() вариант (unicode версия hmg) Скрытый текст

Не работает GetWindowText(), через имя класса hWnd получен, через GetWindowText() нет.
Вариант unicode ф-ии GetWindowText() нашей версии и версии hmg
 
Наш (работает)
HB_FUNC( GETWINDOWTEXT )
{
HWND hWnd = ( HWND ) hb_parnl( 1 );
int iLen = GetWindowTextLength( hWnd );
TCHAR *cText = ( TCHAR * ) hb_xgrab( (iLen + 1)*2 );
int iRet = GetWindowText( hWnd, ( LPTSTR ) cText, (iLen + 1)*2 );

hb_retclen_t( cText, iRet );
hb_xfree( cText );
}


uncode HMG
HB_FUNC( GETWINDOWTEXT )
{
#ifdef UNICODE
LPSTR pStr;
#endif
HWND hWnd = ( HWND ) HB_PARNL( 1 );
int iLen = GetWindowTextLength( hWnd );
LPTSTR szText = ( TCHAR * ) hb_xgrab( ( iLen + 1 ) * sizeof( TCHAR ) );

iLen = GetWindowText( hWnd, szText, iLen + 1 );

#ifndef UNICODE
iLen = GetWindowText( hWnd, szText, iLen + 1 );

hb_retclen( szText, iLen );
#else
GetWindowText( hWnd, szText, iLen + 1 );

pStr = WideToAnsi( szText );
hb_retc( pStr );
hb_xfree( pStr );
#endif
hb_xfree( szText );
}


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




Пост N: 3744
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 30.05.21 21:52. Заголовок: PS Результат вызовов..


PS
Результат вызовов ф-ии HandlesHbWin(...) в log Скрытый текст


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




Пост N: 3745
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 31.05.21 09:13. Заголовок: SergKis пишет Не раб..


SergKis пишет
 цитата:
Не работает GetWindowText()


Виноват, работает GetWindowText() и HandlesHbWin() работает.
Похоже заработался вчера.

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




Пост N: 1863
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 31.05.21 10:27. Заголовок: Выложил майскую ANSI..


Выложил майскую ANSI сборку 21.05 с учетом всех последних изменений по адресу

http://hmgextended.com/files/CONTRIB/hmg-21.05-setup.exe

Рассматриваю эту сборку как финальную

P.S. Архив уникодной сборки также обновил с учетом обсуждения работы функции GetWindowText()

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




Пост N: 3746
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 31.05.21 10:42. Заголовок: gfilatov2002 пишет А..


gfilatov2002 пишет
 цитата:
Архив уникодной сборки также обновил


Можно получить этот вариант на посмотрреть ?

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





Пост N: 325
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 31.05.21 11:14. Заголовок: gfilatov2002 А хор..


gfilatov2002

А хорошо бы в уникодной версии тоже завести программы-примеры. SergKis выкладывал на днях один.

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