Re: GRID CONTROL problem
Posted: Wed Dec 07, 2016 1:47 pm
Hello Dr. Claudio Soto
当我打开数据库(表),与之绑定的GRID 显示正常,但是当我对数据库进行过滤后,我发现符合条件的记录显示不正确.
When I open the database (table), with the binding of the GRID show normal, but when I filter the database, I found that the records are not displayed correctly. I included my sources and database in attachment in a zip-file.
I use WindowsXp, and installed HMG.3.4.3.Setup.exe.
Best regards, HUIYI
当我打开数据库(表),与之绑定的GRID 显示正常,但是当我对数据库进行过滤后,我发现符合条件的记录显示不正确.
When I open the database (table), with the binding of the GRID show normal, but when I filter the database, I found that the records are not displayed correctly. I included my sources and database in attachment in a zip-file.
I use WindowsXp, and installed HMG.3.4.3.Setup.exe.
Code: Select all
#include <hmg.ch>
Function Main
MAKEDATA()
DEFINE WINDOW MAIN AT 213 , 425;
WIDTH 482 HEIGHT 350 VIRTUAL WIDTH Nil VIRTUAL HEIGHT Nil ;
TITLE "Test grid control" ICON NIL MAIN CURSOR NIL
DEFINE LABEL Label_1
ROW 30
COL 40
WIDTH 120
HEIGHT 24
VALUE "Enter filter value"
FONTNAME "Arial"
FONTSIZE 9
TOOLTIP ""
ACTION Nil
AUTOSIZE .F.
BACKCOLOR NIL
FONTCOLOR NIL
RIGHTALIGN .T.
END LABEL
DEFINE TEXTBOX Text_1
ROW 30
COL 180
WIDTH 120
HEIGHT 24
FONTNAME "Arial"
FONTSIZE 9
TOOLTIP ""
CASECONVERT NONE
BACKCOLOR NIL
FONTCOLOR NIL
INPUTMASK "!!!!!"
FORMAT Nil
VALUE ""
END TEXTBOX
DEFINE BUTTON Button_1
ROW 30
COL 330
WIDTH 100
HEIGHT 28
ACTION FILTER(MAIN.TEXT_1.VALUE)
CAPTION "FILTER"
FONTNAME "Arial"
FONTSIZE 9
TOOLTIP ""
PICTURE Nil
PICTALIGNMENT TOP
END BUTTON
DEFINE GRID Grid_1
ROW 80
COL 30
WIDTH 420
HEIGHT 210
ITEMS { {""} }
VALUE Nil
WIDTHS {200,200 }
HEADERS {"field1","field2"}
FONTNAME "Arial"
FONTSIZE 9
TOOLTIP ""
BACKCOLOR NIL
FONTCOLOR NIL
HEADERIMAGES Nil
ROWSOURCE "test"
COLUMNFIELDS {"AA","BB"}
ALLOWAPPEND .F.
ALLOWDELETE .F.
BUFFERED .F.
DYNAMICDISPLAY Nil
ONSAVE Nil
LOCKCOLUMNS 0
END GRID
END WINDOW
Main.Center
Main.Activate
Return
function makedata()
local astru:={{"AA","C",3,0},{"BB","C",5,0}}
dbcreate("test.dbf",astru)
use test new
dbAppend()
TEST->AA:="11"
TEST->BB:="AAAAA"
dbAppend()
TEST->AA:="12"
TEST->BB:="BBBBB"
dbAppend()
TEST->AA:="13"
TEST->BB:="AAAAA"
dbAppend()
TEST->AA:="14"
TEST->BB:="CCCCC"
dbAppend()
TEST->AA:="15"
TEST->BB:="AAAAA"
dbAppend()
TEST->AA:="16"
TEST->BB:="AAAAA"
RETURN NIL
FUNCTION FILTER(CVALUE)
IF EMPTY(CVALUE)
dbClearFilter()
ELSE
dbSETFilter({||TEST->BB==CVALUE})
ENDIF
TEST->(DBGOTOP())
MAIN.GRID_1.REFRESH()
RETURN NIL
Best regards, HUIYI