Is it possible to build a slider in Express as presented in this sample?

Suggestions are very welcome
like all in my DXE LIB it is "pure" Xbase++ Code with ot4xb to access Windows Common Control which i have put into LIB / DLL to testdrive.rdonnay wrote:What is DXESLIDE.LIB and DXESLIDE.DLL ?
Where do they come from?
Code: Select all
::hSlider := @user32:CreateWindowExA(0 ,; // extended styles
TRACKBAR_CLASS ,; // control 'class' name "msctls_trackbar32"
"" ,; // control caption
::dwLvStyle ,; // wnd Style
aRC[1],aRC[2],aRC[3],aRC[4],; // position: left,top,width,height
::hXbp ,; // parent window handle
APP_ID_SLIDE ,; // control's ID
AppInstance() ,; // instance Ot4Xb -> GetModuleHandleA()
0) // user defined info
Code: Select all
DO CASE
CASE nStage == CDDS_PREPAINT // Before the paint cycle begins
CASE nStage == CDDS_PREERASE // Before the erase cycle begins
CASE nStage == CDDS_POSTERASE // After the erase cycle is complete
CASE nStage == CDDS_ITEMPREERASE // Before an item is erased
CASE nStage == CDDS_ITEMPOSTERASE // After an item has been erased
CASE nStage == CDDS_ITEMPREPAINT // Before an item is drawn
DO CASE
CASE itemSpec = TBCD_CHANNEL // channel that the trackbar control's thumb marker slides along
CASE itemSpec = TBCD_TICS // the increment tick marks that appear along the edge of the trackbar control
CASE itemSpec = TBCD_THUMB // trackbar control's thumb marker.
// This is the portion of the control that the user moves
// Color Frame
hPen := @Gdi32:CreatePen(PS_SOLID,1,AutomationTranslateColor(GraMakeRGBColor({255,0,0}),.F.))
@Gdi32:SelectObject(hdc, hPen)
@GDI32:SetBkColor( hdc, AutomationTranslateColor(GraMakeRGBColor({0,255,0}),.F.))
// Color to fill
hBrush := @Gdi32:CreateSolidBrush(AutomationTranslateColor(GraMakeRGBColor({0,0,255}),.F.))
@GDI32:SelectObject(hdc,hBrush)
// paint Eclipse
@GDI32:Ellipse(hDC,rc:left,rc:top,rc:right,rc:bottom)
// clean up
@gdi32:DeleteObject( hPen )
@gdi32:DeleteObject( hBrush)
RETURN CDRF_SKIPDEFAULT // don't let control draw itself, or it will un-do our work
ENDCASE
CASE nStage == CDDS_ITEMPOSTPAINT // After an item has been drawn
CASE nStage == CDDS_POSTPAINT // After the paint cycle is complete
RETURN CDRF_DODEFAULT
ENDCASE
RETURN NIL
Code: Select all
o:Drawmode := XBP_DRAW_OWNERADVANCED