Page 1 of 1
xBrowse: How to display image from resource based on flag
Posted: Fri Dec 04, 2020 8:02 am
by hua
Hi,
Can someone share a code snippet to view image from resource in a column based on a flag in the dbf currently being viewed?
TIA
Re: xBrowse: How to display image from resource based on flag
Posted: Sun Dec 06, 2020 9:52 pm
by nageswaragunupudi
This sample demonstrates 3 alternative ways of doing it.
Code: Select all
#include "fivewin.ch"
REQUEST DBFCDX
function Main()
USE CUSTOMER NEW SHARED ALIAS CUST VIA "DBFCDX"
Sample1()
Sample2()
Sample3()
return nil
function Sample1()
local oDlg, oBrw
DEFINE DIALOG oDlg SIZE 600,400 PIXEL TRUEPIXEL
@ 10,10 XBROWSE oBrw SIZE -10,-10 PIXEL OF oDlg ;
DATASOURCE "CUST" ;
COLUMNS "FIRST", "CITY", "MARRIED" ;
CELL LINES NOBORDER
WITH OBJECT oBrw
:married:SetCheck( { "TWO", "ONE" } )
:CreateFromCode()
END
ACTIVATE DIALOG oDlg CENTERED
return nil
function Sample2()
local oDlg, oBrw
DEFINE DIALOG oDlg SIZE 600,400 PIXEL TRUEPIXEL
@ 10,10 XBROWSE oBrw SIZE -10,-10 PIXEL OF oDlg ;
DATASOURCE "CUST" ;
COLUMNS "FIRST", "CITY", "" ;
HEADERS nil, nil, "MARRIED" ;
CELL LINES NOBORDER
WITH OBJECT oBrw
WITH OBJECT :married
:AddBitmap( { "ONE", "TWO" } )
:bBmpData := { || If( ( oBrw:cAlias )->MARRIED, 2, 1 ) }
END
:CreateFromCode()
END
ACTIVATE DIALOG oDlg CENTERED
return nil
function Sample3()
local oDlg, oBrw
DEFINE DIALOG oDlg SIZE 600,400 PIXEL TRUEPIXEL
@ 10,10 XBROWSE oBrw SIZE -10,-10 PIXEL OF oDlg ;
DATASOURCE "CUST" ;
COLUMNS "FIRST", "CITY", "IF(MARRIED,'TWO','ONE')" ;
HEADERS nil, nil, "MARRIED" ;
CELL LINES NOBORDER
WITH OBJECT oBrw
WITH OBJECT :married
:cDataType := "P"
:lBmpTransparent := .t.
END
:CreateFromCode()
END
ACTIVATE DIALOG oDlg CENTERED
return nil
RC file:
Code: Select all
ONE 10 "c:\fwh\bitmaps\32x32\user.bmp"
TWO BITMAP "c:\fwh\bitmaps\32x32\users.bmp"
In all the 3 cases, the result is :
Re: xBrowse: How to display image from resource based on flag
Posted: Mon Dec 07, 2020 2:49 am
by hua
Thank you very much for the extensive example Rao!