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

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

gfilatov: Начало темы находится здесь, а теперь АНОНС * АНОНС * АНОНС * АНОНС * АНОНС Готовится к опубликованию новая сборка №48, которая выйдет в конце недели. Если у Вас есть интересные наработки для включения в новый релиз, то сейчас самое удобное время для их отправки мне Кратко, что нового: - исправление обнаруженных ошибок и неточностей кода; - новый класс HEADERIMAGE для Grid и Browse; - свойство Address в Hyperlink может теперь открывать папку или файл на диске; - добавлен NOTABSTOP класс для Browse; - поддержка пользовательских компонентов (заимствована из оффициального релиза); - расширения и исправления в библиотеках TsBrowse и PropGrid; - обновлены сборки Харбор и HMGS-IDE; - новые и обновленные старые примеры (как обычно ).

Ответов - 301, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 All

Pasha: Возможно, проблема возникает исключительно с rddads Для dbSkip(0) вызывается AdsRefreshRecord, а для dbGoto(RecNo()) - не вызывается

Haz: Pasha пишет: Возможно, проблема возникает исключительно с rddads Pasha, не могу проверить дома с другими RDD работу в сети, но в скоро написанном примере наглядно отличие dbSkip() от dbGoto(RecNo()) Скомпилите пример и по очереди в вровсы забивайте разные значения оба бровса по одной базе с разными алиасами и PostEdit, RDD RDDCDX верхний вровс использует dbGoto(RecNo()) в PostEdit нижний вровс использует dbSkip(0) в PostEdit Отличие видно в том , что при вводе чего-либо в нижний бровс и редактировании песле этого верхнего бровса , значение в верхнем устанавливается сразу ( после получения фокуса ) правильным. В ADS Remote Server, кроме того еще и вылет по блокировке с dbGoto(RecNo()) , возможно на сетке и CDX упадет Func Main() #include "minigui.ch" #include "TSBrowse.ch" local i := 1 local j := '' local lOk := .T. local cKey := '' local cFile := 'TEST.DBF' REQUEST DBFCDX rddRegister( "DBFCDX", 1 ) rddsetdefault( "DBFCDX" ) // Создадим тестовую базку DbCreate( cFile, {{"FIELD01", "C", 20, 0} }) //Откроем в одной области и запишем пустую запись Use ( cFile ) SHARED NEW ALIAS 'BASE1' DBAPPEND() //Откроем ее же в другой области Use ( cFile ) SHARED NEW ALIAS 'BASE2' DEFINE WINDOW Form_0 ; AT 0,0 ; WIDTH 300 ; HEIGHT 150 ; TITLE 'TestLock' ; MAIN DbselectArea("BASE1") DEFINE TBROWSE TBASE1 At 5, 5 ALIAS "BASE1" ; WIDTH 270 ; HEIGHT 55 ; COLORS { CLR_BLACK, CLR_BLUE } ; FONT "MS Sans Serif" ; SIZE 8 ; CELL END TBROWSE TBASE1:LoadFields( .T. ) TBASE1:nHeightCell += 5 TBASE1:aColumns[1]:nEditMove := DT_DONT_MOVE TBASE1:SetColSize(1,265 ) TBASE1:aColumns[1]:bPostEdit := {|| DbGoto(Recno()) } DbselectArea("BASE1") DEFINE TBROWSE TBASE2 At 55, 5 ALIAS "BASE2" ; WIDTH 270 ; HEIGHT 55 ; COLORS { CLR_BLACK, CLR_BLUE } ; FONT "MS Sans Serif" ; SIZE 8; CELL END TBROWSE TBASE2:LoadFields( .T. ) TBASE2:nHeightCell += 5 TBASE2:aColumns[1]:nEditMove := DT_DONT_MOVE TBASE2:SetColSize(1,265 ) TBASE2:aColumns[1]:bPostEdit := {|| DbSkip(0) } END WINDOW CENTER WINDOW Form_0 ACTIVATE WINDOW Form_0 return nil

dimao: Собственно, почему проект ориентирован на Борландовский компилятор? Я против него ничего не имею, но MinGW как-то роднее , с ним и nightly bin под винду идет. Чем борланд так уж лучше?


Chikanuk: dimao пишет: Собственно, почему проект ориентирован на Борландовский компилятор? Исторически, наверное?... dimao пишет: но MinGW как-то роднее , А собрать им? Исходники-то есть. PS: сам под виндой (увы мне ) пользуюсь MinGW. Программы (чисто по математике) работают на 25% быстрее, чем собранные BCC5.5.1 (А под Debian - еще на 13% быстрее... На том же железе)

gfilatov2002: Выложил текущую сборку компилятора Харбор 2.1.0rc2 для BCC 5.5.1 по адресу: http://minigui.mylivepage.ru/file/?fileid=8549 Harbour 2.1.0rc2 (Rev. 16405) Copyright (c) 1999-2011,http://harbour-project.org/ Harbour Build Info --------------------------- Version: Harbour 2.1.0rc2 (Rev. 16405) Compiler: Borland C++ 5.5.1 (32-bit) PCode version: 0.3 ChangeLog last entry: 2011-03-01 09:43 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) ChangeLog ID: ChangeLog 16405 2011-03-01 08:44:17Z vszakats Built on: Mar 1 2011 11:03:31 Extra C compiler options: -DHB_GC_AUTO -DHB_GUI Build options: (Clipper 5.3b) (Clipper 5.x undoc) (WINANSI) ---------------------------

AM: Я дико извиняюсь, но почему в документации по TBrowse-объектам нигде нет информации о внутренних переменных? Они встречаются в примерах, но описания (даже перечня) их я не нашёл, прямо нигде! Как так?

gfilatov2002: AM пишет: Они встречаются в примерах, но описания (даже перечня) их я не нашёл Надо смотреть в сырцах TsBrowse: DATA aActions // actions to be executed on header's click DATA aCheck //V90 // stock bitmaps for check box DATA aColors // the whole colors kit DATA aColSel //V90 // automatic selected columns creation with databases or recordsets DATA aArray AS ARRAY // browsed array DATA aBitmaps AS ARRAY INIT {} // array with bitmaps handles DATA aDefault AS ARRAY INIT {} // default values in append mode DATA aClipBoard // used by RButtonDown method DATA aColSizes, aColumns, aHeaders // the core of TSBrowse DATA aDefValue AS ARRAY INIT {} // for array in append mode DATA aIcons AS ARRAY INIT {} // array with icons names DATA aImages AS ARRAY INIT {} // array with bitmaps names DATA aJustify // compatibility with TWBrowse DATA aLine // bLine as array DATA aMsg AS ARRAY INIT {} // multi languaje feature DATA aKeyRemap AS ARRAY INIT {} // to prevalidate keys at KeyChar method DATA aPostList // used by ComboWBlock function DATA aSelected // selected items in select mode DATA aSortBmp //V90 // stock bitmaps for sort in headers DATA aSuperHead // array with SuperHeads properties DATA aTags //V90 // array with dbf index tags DATA aFormatPic // array of picture clause DATA bBof // codeblock to check if we are before the first record DATA bEof // codeblock to check if we are beyond the last record DATA bAddRec // custom function for adding record (with your own message) DATA bBitMapH // bitmap handle DATA bContext // evaluates windows keyboard context key DATA bBookMark //V90 // for xBrowse compatibility DATA bDelete // evaluated after user deletes a row with lCanDelete mode DATA bFileLock // custom function for locking database (with your own message) DATA bGoToPos // scrollbar block DATA bFilter // a simple filter tool DATA bIconDraw, bIconText // icons drawing directives DATA bInit // code block to be evaluated on init DATA bKeyCount //V90 // ado keycount block DATA bLine, bSkip, bGoTop, bGoBottom, ; bLogicLen, bChange // navigation codeblocks DATA bKeyNo // logical position on indexed databases DATA bOnDraw // evaluated in DrawSelect() DATA bOnDrawLine //V90 // evaluated in DrawLine() DATA bOnEscape //V90 // to do something when browse ends through escape key DATA bPostDel // evaluated after record deletion DATA bRecLock // custom function for locking record (with your own message) DATA bRecNo //V90 // retrieves or changes physical record position DATA bSeekChange // used by seeking feature DATA bSelected // to be evaluated in select mode DATA bSetOrder // used by seeking feature DATA bTagOrder // to restore index on GotFocus DATA bUserSearch // user code block for AutoSearch DATA bUserFilter // user code block for AutoFilter DATA bUserKeys // user code block to change the // behavior of pressed keys DATA cAlias // data base alias or "ARRAY" or "TEXT_" DATA cDriver // RDD in use DATA cField, uValue1, uValue2 // SetFilter Params DATA cOrderType // index key type for seeking DATA cPrefix // used by TSBrowse search feature DATA cSeek // used by TSBrowse search feature DATA cFont // new DATA cChildControl // new DATA cArray // new DATA cToolTip // tooltip when mouse is over Cells DATA hBmpCursor AS NUMERIC // bitmap cursor for first column DATA l2007 AS LOGICAL INIT .F. // new look //V90 DATA l3DLook AS LOGICAL INIT .F. READONLY // internally control state of ::Look3D() in "Phantom" column DATA lHitTop, lHitBottom, lCaptured, lMChange // browsing flags DATA lAppendMode AS LOGICAL INIT .F. READONLY // automatic append flag DATA lAutoCol //V90 // automatic columns generation from AUTOCOLS clause DATA lAutoEdit AS LOGICAL INIT .F. // activates continuous edition mode DATA lAutoSkip AS LOGICAL INIT .F. // compatibility with TCBrowse DATA lCanAppend AS LOGICAL INIT .F. READONLY // activates auto append mode DATA lCanDelete AS LOGICAL INIT .F. HIDDEN // activates delete capability DATA lCanSelect AS LOGICAL INIT .F. // activates select mode DATA lCellBrw // celled browse flag DATA lCellStyle AS LOGICAL INIT .F. // compatibility with TCBrowse DATA lChanged AS LOGICAL INIT .F. // field has changed indicator DATA lClipMore AS LOGICAL INIT .F. // ClipMore RDD DATA lColDrag AS LOGICAL // dragging feature DATA lConfirm AS LOGICAL INIT .T. HIDDEN // ask for user confirm to delete a row DATA lDescend AS LOGICAL INIT .F. // descending indexes DATA lDestroy // flag to destroy bitmap created for selected records DATA lDontChange //V90 // avoids user to change line with mouse or keyboard DATA lDrawHeaders AS LOGICAL INIT .T. // condition for headers drawing DATA lDrawFooters // condition for footers drawing DATA lEditable AS LOGICAL // editabe cells in automatic columns creation DATA lEditing AS LOGICAL INIT .F. READONLY // to avoid lost focus at editing time DATA lDrawSuperHd AS LOGICAL INIT .F. // condition for SuperHeader drawing DATA lDrawSpecHd AS LOGICAL INIT .F. // condition for SpecHeader drawing DATA lEditingHd AS LOGICAL INIT .F. READONLY // to avoid lost focus at editing time SpecHd DATA lEditableHd AS LOGICAL INIT .F. // activates edition mode of SpecHd on init #ifdef _TSBFILTER7_ DATA lFilterMode AS LOGICAL INIT .F. READONLY // index based filters with NTX RDD #endif DATA lAutoSearch AS LOGICAL INIT .F. READONLY // condition for SuperHeader as AutoSearch DATA lAutoFilter AS LOGICAL INIT .F. READONLY // condition for SuperHeader as AutoFilter DATA lHasChgSpec AS LOGICAL INIT .F. // SpecHeader data has changed flag for further actions DATA lFirstFocus HIDDEN // controls some actions on init DATA lFirstPaint // controls some actions on init DATA lFixCaret AS LOGICAL // TSGet fix caret at editing time DATA lFooting AS LOGICAL // indicates footers can be drawn DATA lNoPaint // to avoid unnecessary painting DATA lGrasp AS LOGICAL INIT .F. READONLY // used by drag & drop feature DATA lHasChanged AS LOGICAL INIT .F. // browsed data has changed flag for further actions DATA lHasFocus AS LOGICAL INIT .F. // focused flag DATA lIconView AS LOGICAL INIT .F. // compatibility with TCBrowse DATA lInitGoTop //V90 // go to top on init, default = .T. DATA lIsArr // browsing an array DATA lIsDbf AS LOGICAL INIT .F. READONLY // browsed object is a database DATA lIsTxt // browsing a text file DATA lLineDrag AS LOGICAL // TSBrowse dragging feature DATA lLockFreeze AS LOGICAL // avoids cursor positioning on frozen columns DATA lMoveCols AS LOGICAL // Choose between moving or exchanging columns (::moveColumn() or ::exchange()) DATA lNoChangeOrd AS LOGICAL // avoids changing active order by double clicking on headers DATA lNoExit AS LOGICAL INIT .F. // prevents edit exit with arrow keys DATA lNoGrayBar AS LOGICAL // don't show inactive cursor DATA lNoHScroll AS LOGICAL // disables horizontal scroll bar DATA lNoLiteBar AS LOGICAL // no cursor DATA lNoMoveCols AS LOGICAL // avoids resize or move columns by the user DATA lNoPopup AS LOGICAL //V90 // avoids popup menu when right click the column's header DATA lPopupActiv AS LOGICAL INIT .F. //V90 // defined popup menu when right click the column's header DATA lNoResetPos AS LOGICAL // prevents to reset record position on gotfocus DATA lNoVScroll AS LOGICAL // disables vertical scroll bar DATA lLogicDrop AS LOGICAL // compatibility with TCBrowse DATA lPageMode AS LOGICAL INIT .F. // paging mode flag DATA lPainted AS LOGICAL // controls some actions on init DATA lRePaint AS LOGICAL // bypass paint if false DATA lPostEdit // to detect postediting DATA lUndo AS LOGICAL INIT .F. // used by RButtonDown method DATA lUpdated AS LOGICAL INIT .F. // replaces lEditCol return value DATA lUpperSeek AS LOGICAL INIT .T. // controls if char expresions are seek in uppercase or not DATA lSeek AS LOGICAL INIT .T. // activates TSBrowse seeking feature DATA lSelector AS LOGICAL INIT .F. //V90 // automatic first column with pointer bitmap DATA lTransparent //V90 // flag for transparent browses DATA lEnabled AS LOGICAL INIT .T. // enable/disable TSBrowse for displaying data //JP 1.55 DATA lPickerMode AS LOGICAL INIT .T. // enable/disable DatePicker Mode in inplace Editing //MWS Sep 20/07 DATA lPhantArrRow AS LOGICAL INIT .F. // Flag for initial empty row in array DATA lEnum AS LOGICAL INIT .F. // activates SpecHeader as Enumerator DATA nAdjColumn AS NUMERIC // column expands to flush table window right DATA nAligBmp AS NUMERIC INIT 0 // bitmap layout in selected cell DATA nCell AS NUMERIC // actual column DATA nClrHeadBack, nClrHeadFore // headers colors DATA nClrFocuBack, nClrFocuFore // focused cell colors DATA nClrEditBack, nClrEditFore // editing cell colors DATA nClrFootBack, nClrFootFore // footers colors DATA nClrSeleBack, nClrSeleFore // selected cell no focused DATA nClrOrdeBack, nClrOrdeFore // order control column colors DATA nClrSpcHdBack,nClrSpcHdFore,nClrSpcHdActive // special headers colors DATA nClrLine // grid line color DATA nColOrder AS NUMERIC // compatibility with TCBrowse DATA nColPos AS NUMERIC INIT 0 // grid column position DATA nColSel AS NUMERIC INIT 0 // column to mark in selected records DATA nColSpecHd AS NUMERIC // activatec editing column of SpecHeader DATA nDragCol AS NUMERIC INIT 0 HIDDEN // drag & drop feature DATA nFireKey // key to start edition, defaults to VK_F2 DATA nFirstKey AS NUMERIC INIT 0 HIDDEN // First logic pos in filtered databases DATA nFreeze AS NUMERIC // 0,1,2.. freezes left most columns DATA nHeightCell AS NUMERIC INIT 0 // resizable cell height DATA nHeightHead AS NUMERIC INIT 0 // " header " DATA nHeightFoot AS NUMERIC INIT 0 // " footer " DATA nHeightSuper AS NUMERIC INIT 0 // " Superhead " DATA nHeightSpecHd AS NUMERIC INIT 0 // " Special header " DATA nIconPos // compability with TCBrowse DATA nLastPainted AS NUMERIC INIT 0 HIDDEN // last painted nRow DATA nLastPos AS NUMERIC // last record position before lost focus DATA nLastnAt AS NUMERIC INIT 0 HIDDEN // last ::nAt value before lost focus DATA nLen AS NUMERIC // total number of browsed items DATA nLineStyle // user definable grid lines style DATA nMaxFilter // maximum number of records to count on index based filters DATA nMemoHE, nMemoWE, nMemoHV, nMemoWV // memo sizes on edit and view mode // Height in lines and Width in pixels // default: 3 lines height and 200 pixels width DATA nOldCell HIDDEN // to control column bGotfocus DATA nOffset AS NUMERIC INIT 0 HIDDEN // offset marker for text viewer DATA nPaintRow AS NUMERIC //V90 // row being painted in DrawLine Method DATA nPhantom AS NUMERIC INIT PHCOL_GRID // controls drawing state for "Phantom" column (-1 or -2) inside ::Look3D() DATA nPrevRec // internally used to go previous record back DATA nRowPos, nAt AS NUMERIC INIT 0 // grid row positions DATA nSelWidth //V90 // Selector column's width DATA nLenPos AS NUMERIC INIT 0 // total number of browsed items in Window JP 1.31 DATA nWheelLines // lines to scroll with mouse wheel action DATA nFontSize // New from HMG DATA nUserKey // user key to change the // behavior of pressed keys DATA nSortColDir AS NUMERIC INIT 0 // Sorting table columns ascending or descending DATA oGet // get object DATA oPhant // phantom column DATA oRSet //V90 // recordset toleauto object DATA oTxtFile AS OBJECT // for text files browsing (TTxtFile() class) DATA uBmpSel // bitmap to show in selected records DATA uLastTag // last TagOrder before losing focus

gfilatov2002: Обновил полную сборку Minigui IDE на сайте http://minigui.mylivepage.ru по адресу: http://minigui.mylivepage.ru/file/?fileid=8550 а также, как обычно, на сервереhttp://hmgextended.com в папке HMGS-IDE.

gfilatov2002: АНОНС * АНОНС * АНОНС * АНОНС * АНОНС Завершается подготовка к опубликованию новой сборки №94, которая выйдет на следующей неделе. Кратко, что нового: - исправление обнаруженных ошибок и неточностей кода; - исправлены ошибки, приводившие к повторному вызову события OnChange в RadioGroup и celled Grid; - RichEdit теперь использует системную DLL версии 4.1 с поддержкой Unicode; - небольшие изменения в библиотеке TsBrowse (от Игоря Назарова и Януша Пора); - обновлена сборка Харбора версии 2.1.0rc2, Hmgs-Ide до версии 1.0.7; - добавлены новые и обновлены некоторые старые примеры (как обычно ) Спасибо за внимание!

LYSK: В старых сборках были примеры с ADS RDD. В последних сборках я их не нахожу. Или не там ищу?

gfilatov2002: LYSK пишет: В старых сборках были примеры с ADS RDD По типу такого #include "minigui.ch" #include "Ads.ch" function Main() REQUEST ADS rddsetdefault( "ADS" ) SET SERVER LOCAL SET FILETYPE TO CDX DEFINE WINDOW Win_1 ; AT 0,0 ; WIDTH 640 ; HEIGHT 480 ; TITLE "EDIT Command Demo" ; MAIN ; ON INIT OpenTable() ; ON RELEASE Closetable() ; BACKCOLOR GRAY DEFINE MAIN MENU OF Win_1 POPUP "&File" ITEM "&Simple Edit test" ACTION EDIT WORKAREA CLIENTES SEPARATOR ITEM "E&xit" ACTION Win_1.Release END POPUP END MENU END WINDOW MAXIMIZE WINDOW Win_1 ACTIVATE WINDOW Win_1 return nil /*-----------------------------------------------------------------------------*/ Procedure OpenTable() USE CLIENTES INDEX CLIENTES NEW Return Nil /*-----------------------------------------------------------------------------*/ Procedure CloseTable() CLOSE CLIENTES Return Nil /*-----------------------------------------------------------------------------*/

Haz: Григорий , добрый день! Скорее всего речь об тестах из поставки харбур .\hb21\contrib\rddads\tests\ там хорошие примеры , но в консольном режиме. Сегодня ночью могу накидать типовой пример в MiniGui + Local ADS ( если нужно ? ) - работа со словарем данных - использование сторед процедур - работа с advantage SQL

gfilatov2002: Haz пишет: могу накидать типовой пример в MiniGui + Local ADS Не хотелось бы Вас напрягать, но попробуйте накидать Единственная просьба: выкладывать такой пример со всеми необходимыми для его запуска .DLL и .CHR файлами

LYSK: Просим! Просим!

Haz: Ловите пример со всеми необходимыми для его запуска .DLL и .CHR файлами click here

Haz: Подправил некоторые ошибки в примере ADS - динамически меняется число колонок в бровсе после sql - добавил autofit по ширине бровса Пример c ADS

Andrey: Haz пишет: могу накидать типовой пример в MiniGui + Local ADS ( если нужно ? ) - работа со словарем данных - использование сторед процедур - работа с advantage SQL А под LetoDB можешь сделать пример ? Было бы очень многим интересно и познавательно !!!

Vlad04: С использованием IDE.

Haz: Andrey пишет: А под LetoDB можешь сделать пример ? Андрей , я с Leto не работал, мне хватает ADS. Так что ... думаю примера не получиться Vlad04 пишет: С использованием IDE. а это как ?

Vlad04: С minigui поставляется и дизайнер форм (IDE). Разумеется , если вы его используете.



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