Codejock Skinframework

This forum is for eXpress++ general support.
Message
Author
User avatar
unixkd
Posts: 565
Joined: Thu Feb 11, 2010 1:39 pm

Re: Codejock Skinframework

#11 Post by unixkd »

Hi Chris
I tried it years ago and removed it after some months. But here is how I did it.
In the main of my software.
Yes I did same. My problem is that I got the error in POST #1 in my application. Roger suggested that we include xppsys.dll in application to solve the problem but did not work.

Thanks

Joe

skiman
Posts: 1183
Joined: Thu Jan 28, 2010 1:22 am
Location: Sijsele, Belgium
Contact:

Re: Codejock Skinframework

#12 Post by skiman »

Hi,

Maybe something with the version of codejock? You can use the function cj_version() to set the version.
Best regards,

Chris.
www.aboservice.be

User avatar
Auge_Ohr
Posts: 1405
Joined: Wed Feb 24, 2010 3:44 pm

Re: Codejock Skinframework

#13 Post by Auge_Ohr »

unixkd wrote: Mon Mar 06, 2023 4:38 am Can you pls give me simple sample program that work for you.

Code: Select all

Xbase++
      ::oSkin := XBPACTIVEXCONTROL() :new( ::drawingArea,, { 0, 0 }, { 0, 0 } )
      ::oSkin:CLSID := "{16378D39-12CF-4C7D-8769-DFAAF02FD1F5}"
      ::oSkin:License := "Skin Framework Control Copyright (c) 2003-2009 Codejock Software" + CHR( 13 ) + CHR( 10 ) + ;
                         "PRODUCT-ID: Codejock.SkinFramework.ActiveX" + HX_VERSION() + CHR( 13 ) + CHR( 10 ) + ;
                         "VALIDATE-CODE: XXX-XXX-XXX-XXX"
      ::oSkin:TabStop := .F.

      ::oSkin:create()

      ::oSkin:ApplyOptions := nOR( xtpSkinApplyMetrics, ;
                                   xtpSkinApplyFrame, ;
                                   xtpSkinApplyColors )
      //                                   xtpSkinApplyMenus  )

      ::oSkin:AutoApplyNewThreads := .T.
      ::oSkin:AutoApplyNewWindows := .T.

      lRetErr := ::oSkin:callMethod( "LoadSkin", SP_SkinPath(), "" )

// NEED when call "new" Window
      oDlg:oSkin:callMethod( "ApplyWindow", oDlg:getHWND() )
---

Code: Select all

harbour
         DEFINE ACTIVEX oSkin
            PARENT Win_1
            ROW 0
            COL 0
            WIDTH 0
            HEIGHT 0
            PROGID "{16378D39-12CF-4C7D-8769-DFAAF02FD1F5}"
         END ACTIVEX

         SetProperty( "Win_1", "oSkin", "Object", "License", "Skin Framework Control Copyright (c) 2003-2009 Codejock Software" + CHR( 13 ) + CHR( 10 ) + ;
                      "PRODUCT-ID: Codejock.SkinFramework.ActiveX" + HX_VERSION() + CHR( 13 ) + CHR( 10 ) + ;
                      "VALIDATE-CODE: XXX-XXX-XXX-XXX" )

         oObj := GetProperty( "Win_1", "oSkin", "Object" )

         oObj:ApplyOptions := bOR( xtpSkinApplyMetrics, ;
                                   xtpSkinApplyFrame, ;
                                   xtpSkinApplyColors, ;
                                   xtpSkinApplyMenus )

         oObj:AutoApplyNewThreads := .T.
         oObj:AutoApplyNewWindows := .T.

         oObj:LoadSkin( SP_SkinPath(), "" )
         
// NEED when call "new" Window
         oObj:ApplyWindow( GetFormHandle( "Win_1" ) )         
unixkd wrote: Mon Mar 06, 2023 4:38 am My problem is that I got the error in POST #1 in my application. Roger suggested that we include xppsys.dll in application to solve the problem but did not work.
as Roger say "Ownerdraw" Menu has make Problem so don´t use xtpSkinApplyMenus

when open a "new" Windows you need to ApplyWindow() with Handle of Window
greetings by OHR
Jimmy

Post Reply