FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Cambiar color de fondo "dialog" de un resource
Posts: 10
Joined: Sun Jul 17, 2011 08:08 PM
Cambiar color de fondo "dialog" de un resource
Posted: Sun Jun 09, 2013 07:36 PM
Hola amigos programadores, les agradeceria si alguien me puede indicar como se puede cambiar el color de fondo de un dialog que se encuentra dentro de mi archivo de recursos. " miRecurso.res ". ah.. y muy importante como puedo colocar una imagen para que vean en algun caso un ejemplo de lo que quiero consultar mediante la ilustración. :-)
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Cambiar color de fondo "dialog" de un resource
Posted: Mon Jun 10, 2013 01:01 PM
Hola, primero, debes crear un archivo .INI para guardar el color.
Code (fw): Select all Collapse
   cPathPleno := "\" + GETCURDIR()

   IF FILE( "FUNDO.INI" )
      FUNDOWND() // Chamada ao fundo de tela Escolhida Pelo Usu rio. Muito Bom.
   ELSE
      NOME_ARQ := FCREATE("FUNDO.INI")

      NREGISTRO := "[MAIN]"                                                  ;
                   + CRLF                                    +               ;
                   "Tipo=1"                                  +               ;
                   + CRLF                                    +               ;
                   "Style=BRICKS"                            +               ;
                   + CRLF                                    +               ;
                   "Cor=14286847"                            +               ;
                   + CRLF                                    +               ;
                   "File="+ALLTRIM(cPathPleno)+"\ARANHA.BMP" +               ;
                   + CRLF+CRLF                               +               ;
                   "[LOGO]"                                  +               ;
                   + CRLF                                    +               ;
                   "File=.\Logo.bmp"                         +               ;
                   + CRLF                                    +               ;
                   "Row=10"                                  +               ;
                   + CRLF                                    +               ;
                   "Col=10"                                  +               ;
                   + CRLF+CRLF                               +               ;
                   "[THANKS]"                                +               ;
                   + CRLF                                    +               ;
                   "Special Thanks = "+"Ednaldo Alves Rolim"                +;
                   + CRLF                                                   +;
                   "Proprietario.. = "+"Joao <!-- e --><a href="mailto:Santos-kmt_karinha@pop.com.br">Santos-kmt_karinha@pop.com.br</a><!-- e -->" +;
                   + CRLF                                    +               ;
                   "Meu Site:..... = "+"Visite: www.pleno.com.br"           +;
                   + CRLF+CRLF                                              +;
                   "Autor......... = "+"Joao <!-- e --><a href="mailto:Santos-kmt_karinha@pop.com.br">Santos-kmt_karinha@pop.com.br</a><!-- e -->"

      FWRITE( NOME_ARQ, NREGISTRO )
      FCLOSE( NOME_ARQ )

      FUNDOWND() // Chamada ao fundo de tela Escolhida Pelo Usu rio. Muito Bom.

   ENDIF

//

//En la FUNCTION que quieres cambiar el color, haces asi:
FUNCTIO SUFUNCTION...


   //-> Pega a Cor no .INI
   INI oIni FILE ".\Fundo.ini"
      GET nCor SECTION "MAIN" ENTRY "Cor" OF oIni DEFAULT nCor
   ENDINI

   DEFINE BRUSH oBrush COLOR VAL(nCor)

   DEFINE CURSOR oCurDedo RESOURCE "Dedo"

   DEFINE ICON oIco NAME "ICONE04"

   DEFINE FONT oFnt   NAME "Ms Sans Serif" SIZE 0, -14 BOLD //UnderLine
   DEFINE FONT oFont  NAME "Ms Sans Serif" SIZE 0, -12 BOLD //UnderLine
 
   DEFINE DIALOG oDlg RESOURCE "DLG_AGENDA_TELEFONICA"                 ;
          TITLE cTitleDial + " :: Hoje: " + DTOC( Date() )             ;
          BRUSH oBrush TRANSPARENT


   // Crea un Button para que el usuario pueda cambiar el color asi
   REDEFINE BUTTON oBtns[13] ID 13000 OF oDlg ;
            ACTION ( SET_COLOR( oDlg ) )

   oBtns[13]:cToolTip := OemToAnsi( "Trocar a Cor da Tela Alt+R " )

   ACTIVATE DIA..

RETURN NIL

//---------------------TROCA/CAMBIA LA COLOR EN TREMPO REAL-----------------

FUNCTION SET_COLOR( oDlg )

   LOCAL oIni, oBrush, oBmp
   LOCAL nTipo, cStyle, nCor := 0, cFile, cLogo, nRow, nCol, lSelect



   oDlg:SetColor( oDlg:nClrText, nCor := ChooseColor( oDlg:nClrPane ) )

   // Grava no Arquivo INI as Modifica‡äes
   INI oIni FILE ".\Fundo.ini"

       SET SECTION "MAIN" ENTRY "Cor"   OF oIni TO nCor

   ENDINI

   oDlg:Refresh()
   oDlg:SetFocus()

RETURN NIL


Saludos

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 10
Joined: Sun Jul 17, 2011 08:08 PM
Re: Cambiar color de fondo &quot;dialog&quot; de un resource
Posted: Tue Jun 11, 2013 03:34 AM

Gracias!

Continue the discussion