Форум » GUI » Новая версия Расширенного релиза библиотеки MiniGUI (часть II) » Ответить

Новая версия Расширенного релиза библиотеки MiniGUI (часть II)

gfilatov: Начало темы здесь А теперь новости: IDE version 0.3.5 - полный пакет (бинарники+исходники) - выложил по адресу: http://minigui.mylivepage.ru/file/?fileid=1257 Очень надеюсь на конструктивную критику!

Ответов - 232, стр: 1 2 3 4 5 6 7 8 9 10 11 12 All

visitor: gfilatov пишет: Обновил программу "Кто хочет стать миллионером?" до версии 1.2. А вот ещё "Кто хочет стать миллионером?": click here Не твоя прога?

gfilatov: visitor пишет: Не твоя прога? Нет, ее автор - Николай Иванов Но большинство вопросов было заимствовано именно из этой программы

gfilatov: На понедельник, 7 мая запланирован выпуск 36-го релиза Расширенной версии библиотеки MiniGUI. Что нового: - исправление обнаруженных ошибок и неточностей кода - обновление компилятора Харбор и IDE - новые интересные примеры Я посвящаю этот выпуск Дню Победы. Мой дед погиб в 1942 году Благодарю за внимание!


gfilatov: Новую версию Расширенного релиза библиотеки MiniGUI выложил по адресу: http://minigui.mylivepage.ru/file/?fileid=2232 Обновил также полный пакет новой версии IDE 0.4.2 с учетом последних исправлений от автора по адресу: http://minigui.mylivepage.ru/file/?fileid=2233 Поздравляю всех форумчан с наступающим Днем Победы!

Vlad04: Примеров написанных в рукопашную более чем достаточно, есть практически на все случаи жизни.Хотелось бы,чтобы расширился раздел примеров написанных с использованиемIDE .

gfilatov: Vlad04 пишет: Хотелось бы,чтобы расширился раздел примеров написанных с использованием IDE. Спасибо за отклик! Такие примеры есть тоже в следующих папках: samples\Advanced\FuncList samples\Advanced\MiniLabel samples\Advanced\PROCESS_KILLER samples\Basic\Contacts samples\Basic\FastFind samples\Basic\Histogram

Петр: Рассматривая на днях реализацию _SetWindowRgn() я заметил, что функции c_SetWindowRgn в качестве первого параметра передается хэндл на окно lhand := GetFormHandle ( name ) c_SetWindowRgn(lhand,col,row,w,h,lx) но c_SetWindowRgn это параметр, почему-то не использует SetWindowRgn(GetActiveWindow(), NULL, TRUE); SetWindowRgn(GetActiveWindow(), hrgn, TRUE); т.е.берется хэндл активного окна с помощью GetActiveWindow() Тоже самое можно сказать и о SetPolyWindowRgn, С_SetPolyWindowRgn. Я считаю, что в определенных условиях это может привести к результату, который, вообще-то, никто не ожидал увидеть и правильнее было бы использовать SetWindowRgn( (HWND) hb_parnl( 1 ), NULL, TRUE); SetWindowRgn( (HWND) hb_parnl( 1 ), hrgn, TRUE);

gfilatov: Петр пишет: и правильнее было бы использовать SetWindowRgn( (HWND) hb_parnl( 1 ), NULL, TRUE); SetWindowRgn( (HWND) hb_parnl( 1 ), hrgn, TRUE); Да, я знаю об этих косяках Проблема была в том, что без использования функции GetActiveWindow() ничего вообще не работало Если сейчас произошли положительные изменения, буду рад поправить код. Жду от Вас хороших новостей!

gfilatov: Новую версию Расширенного релиза библиотеки MiniGUI выложил по адресу: http://minigui.mylivepage.ru/file/?fileid=2270 Обновил также полный пакет новой версии IDE 0.4.3 с учетом последних исправлений от автора по адресу: http://minigui.mylivepage.ru/file/?fileid=2271

gfilatov: Текущую версию компилятора Харбор CVS выложил по адресу: http://minigui.mylivepage.ru/file/?fileid=2297

gfilatov: Новую версию Расширенного релиза библиотеки MiniGUI выложил по адресу: http://minigui.mylivepage.ru/file/?fileid=2332 Что нового: - исправление обнаруженных ошибок и неточностей кода - новые команды для создания контекстного меню у отдельного элемента управления - новая библиотека ADORDD для доступа к SQL-базам в стиле Клипперовских команд - обновление библиотек HbOLE и MySQL - обновление компилятора Харбор и IDE - обновление старых примеров Обновил также полный пакет новой версии IDE с учетом последних исправлений от автора по адресу: http://minigui.mylivepage.ru/file/?fileid=2333

Петр: Почему в поставку Harbour не включена библиотека hbzip.lib и имеет ли смысл дальнейшее использование ziparchive.lib и zlib1.lib? Спасибо

gfilatov: Петр, Эта библиотека имеет лицензионные ограничения при использовании в коммерческих программах (необходима платная лицензия). Поэтому пока используем старые библиотеки, которые вполне сносно работают

Петр: Для тех, кому окажется мало возможностей функции HB_GETUNRARFILE() пример использования unrar.dll /* * MiniGUI UnRar Demo */ #include "minigui.ch" Function Main DEFINE WINDOW Win_1 ; AT 0,0 ; WIDTH 400 ; HEIGHT 400 ; TITLE 'GetFile Test' ; MAIN DEFINE MAIN MENU DEFINE POPUP 'File' MENUITEM 'Test 1' ACTION Test1() MENUITEM 'Get Unrar.dll Version' ACTION Test2() SEPARATOR ITEM 'Exit' ACTION ThisWindow.Release END POPUP END MENU END WINDOW CENTER WINDOW Win_1 ACTIVATE WINDOW Win_1 Return /* */ Procedure Test1() Local x, a x := Getfile ( , 'Open a File' , , .f. , .t. ) IF !Empty( x ) a := Hb_RarGetFileList( x ) // msginfo ( a[3][1] + "-" + a[3][4] ) msginfo ( a[3][1] + "-" + DToS( a[3][4] ) ) ENDIF Return Procedure Test2() Local x msginfo ( Str( Hb_RarGetDllVersion( ) ) ) Return /* */ #pragma BEGINDUMP #include <windows.h> #include <time.h> #include "unrar.h" #include "hbapi.h" #include "hbvm.h" #include "hbstack.h" #include "hbapiitm.h" static PHB_ITEM RGetDate( UINT FileTime ); //static PHB_ITEM RConvertFileTimeToString( UINT FileTime, BOOL includeTime, BOOL includeSeconds ); HB_FUNC ( HB_RARGETDLLVERSION ) { hb_retni( RARGetDllVersion( ) ); } HB_FUNC ( HB_RARGETFILELIST ) { PHB_ITEM pFileList = hb_itemArrayNew( 0 ); PHB_ITEM pFileName = hb_itemNew( NULL ); PHB_ITEM pPackSize = hb_itemNew( NULL ); PHB_ITEM pUnpSize = hb_itemNew( NULL ); HANDLE hArcData; int RHCode, PFCode; char CmtBuf[16384]; struct RARHeaderDataEx HeaderData; struct RAROpenArchiveDataEx OpenArchiveData; memset( &OpenArchiveData, 0, sizeof( OpenArchiveData ) ); OpenArchiveData.ArcName = hb_parc( 1 ); OpenArchiveData.CmtBuf = CmtBuf; OpenArchiveData.CmtBufSize = sizeof( CmtBuf ); OpenArchiveData.OpenMode = RAR_OM_LIST; hArcData=RAROpenArchiveEx( &OpenArchiveData ); if ( OpenArchiveData.OpenResult == 0 ) { HeaderData.CmtBuf = CmtBuf; HeaderData.CmtBufSize = sizeof( CmtBuf ); while ( ( RHCode = RARReadHeaderEx( hArcData, &HeaderData ) ) == 0 ) { __int64 UnpSize = HeaderData.UnpSize + ( ( (__int64) HeaderData.UnpSizeHigh ) << 32 ); __int64 PackSize= HeaderData.PackSize +( ( (__int64) HeaderData.PackSizeHigh ) << 32 ); PHB_ITEM pSubarray = hb_itemArrayNew( 4 ); hb_arraySet( pSubarray, 1, hb_itemPutC( pFileName, HeaderData.FileName ) ); hb_arraySet( pSubarray, 2, hb_itemPutND( pUnpSize, UnpSize ) ); hb_arraySet( pSubarray, 3, hb_itemPutND( pPackSize, PackSize ) ); hb_arraySet( pSubarray, 4, RGetDate( HeaderData.FileTime ) ); // hb_arraySet( pSubarray, 4, RConvertFileTimeToString( HeaderData.FileTime, TRUE, TRUE ) ); hb_arrayAdd( pFileList, pSubarray ); hb_itemRelease( pSubarray ); if ( ( PFCode = RARProcessFile( hArcData, RAR_SKIP, NULL, NULL ) ) != 0 ) { break; } } } hb_itemRelease( pFileName ); hb_itemRelease( pPackSize ); hb_itemRelease( pUnpSize ); RARCloseArchive(hArcData); hb_itemRelease( hb_itemReturn( pFileList ) ); } static PHB_ITEM RGetDate( UINT FileTime ) { FILETIME ft; SYSTEMTIME st; PHB_ITEM pResult = hb_itemNew( NULL ); DosDateTimeToFileTime( HIWORD( FileTime ), LOWORD( FileTime ), &ft ); FileTimeToSystemTime( &ft, &st ); return ( hb_itemPutD( pResult, st.wYear, st.wMonth, st.wDay ) ); } } #pragma BEGINEND

gfilatov: Петр Ваш пример работает нормально, но при компиляции получаю предупреждение Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland demo.c: Warning W8065 demo.prg 70: Call to function 'RARGetDllVersion' with no prototype in function HB_FUN_RARGETDLLVERSION Как насчет функции для распаковки RAR-архива ?

Петр: Есть такая - тестирую. Если хотите, могу выслать на мэйл - свежий взгляд со стороны никогда не помешает ! С RARGetDllVersion уже разобрался.

gfilatov: Петр пишет: Если хотите, могу выслать на мэйл Конечно, присылай - с удовольствием потестирую!

gfilatov: gfilatov пишет: Как насчет функции для распаковки RAR-архива ? Демострационный пример UnRar будет включен в следующий выпуск Расширенного релиза библиотеки.

gfilatov: Текущую версию компилятора Харбор CVS выложил по адресу: http://minigui.mylivepage.ru/file/?fileid=2397 Version 1.1.1 Devel Build (2007-06-14) =========================== - added support for writable string enumerators (s:="abc";for each c in @s;...) - cleaned the syntax and strange unsupported but accepted by [macro]compiler constructions - added BEGIN SEQUENCE [WITH <bErrorBlock>] / RECOVER [USING <oErr>] / ALWAYS / END - new debugger code with low level C interface borrowed from xHarbour - added hash tables - speed improvement - added regular expressions - added internet sockets - added checksum functions - added support for execution .prg scripts in hbrun - added HB_COMPAT_XHB macro which allows to enable many xHarbour extensions - added to default PP tables defines from hbsetup.ch - added #ytranslate, #ycommand, #yuntranslate, #yuncommand - fixes in BROWSE, GET and some other .prg classes - fixed UFT8/UNICODE translations for control characters in GTSLN and GTXWC - cleaned many memory leaks in Compiler - added separated compiler library which can be linked with VM and RTL libraries - cleaned some possible bad side effects in cross references - many other fixes, improvements and extensions - see ChangeLog for details

gfilatov: Новую версию Расширенного релиза библиотеки MiniGUI выложил по адресу: http://minigui.mylivepage.ru/file/?fileid=2462 Что нового: - исправление обнаруженных ошибок и неточностей кода; - обновление библиотеки PropGrid; - синхронизация с оффициальными версиями HMG 2.0.026-030; - обновление компилятора Харбор (SVN 2007-06-23 15:45) и IDE 0.4.5; - новые примеры. Обновил также полный пакет новой версии IDE с учетом последних изменений от автора по адресу: http://minigui.mylivepage.ru/file/?fileid=2463



полная версия страницы