Ayuda con RadioButtom

Ayuda con RadioButtom

Postby José Camilo » Mon Aug 05, 2024 5:06 pm

Buenas tardes.
Se me presenta el siguiente problema:
En un dialogo tengo definidos 2 RADIO, que solo se activan cuando es un registro nuevo, hasta aca todo bien.
El problema sucede cuando ya pase por estos 2 RADIO y con el mouse regreso a cambiar el valor de alguno de ellos, me cambia el valor pero quita la marca del otro RADIO, solo cuando lo hago con el mouse, cuando regreso a LOS RADIO con las TECLAS de movimientos puedo cambiar cualquiera de los RADIO y NO "anula" al Otro RADIO.

Por que puede ser?

Asi los tengo definidos


REDEFINE RADIO oTipoCon VAR nTipoCont ID Con_Comercial, Con_Vivienda OF oDlgCF when agrega

REDEFINE RADIO oLey VAR nLey ID Con_2022, Con_2023 OF oDlgCF when agrega

Gracias.
José Camilo
 
Posts: 210
Joined: Wed Apr 07, 2021 3:56 pm

Re: Ayuda con RadioButtom

Postby karinha » Mon Aug 05, 2024 5:33 pm

buenas, que és esto?

Code: Select all  Expand view  RUN

ID Con_Comercial, Con_Vivienda  -> no és mejor números?
 


Muestre un ejemplo completo porfa. estás usando TRANSPARENT en el DIALOGO?

Gracias.

Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7831
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Ayuda con RadioButtom

Postby karinha » Mon Aug 05, 2024 5:39 pm

prueba asi:

Code: Select all  Expand view  RUN

// Radio Buttons management sample

// -> C:\FWH\SAMPLES\TESTRAD.PRG y TESTRAD.RC -> Marcelo

#include "FiveWin.ch"

FUNCTION Main()

   LOCAL oDlg, oRadMenu, oBrush, oFont, oGroup, aGrad
   LOCAL nOption := 2

   SET _3DLOOK ON

   // aGrad := { { 1, CLR_WHITE, CLR_HCYAN  } } // FICA 1/2 AZULADITO
   aGrad := { { 0.50, METRO_INDIGO, METRO_LIME },{ 0.50, METRO_LIME, METRO_INDIGO } }

   DEFINE BRUSH oBrush FILE "..\bitmaps\sea.bmp" STRETCH // RESIZE

   DEFINE FONT oFont NAME "Verdana" SIZE 0,-14 BOLD

   DEFINE DIALOG oDlg RESOURCE "Radios" FONT oFont GRADIENT aGrad //Ou: BRUSH oBrush

   oDlg:lHelpIcon := .F.

   REDEFINE GROUP oGroup ID 107 OF oDlg COLOR METRO_ORANGE, METRO_LIME ;
      FONT oFont TRANSPARENT

   REDEFINE RADIO oRadMenu VAR nOption ID 110, 120, 130, 140, 150 OF oDlg ;
      ON CHANGE MsgBeep()

   REDEFINE BUTTON ID 100 OF oDlg ACTION oRadMenu:GoNext() ;
      WHEN nOption == 3

   REDEFINE BUTTON ID 102 OF oDlg ACTION oRadMenu:GoPrev()

   ACTIVATE DIALOG oDlg CENTERED ;
      ON INIT( IsAppThemed(), CTRLS_COLORS( oDlg ) )

//      ON INIT( CTRLS_COLORS( oDlg ) )
//      ON INIT oRadMenu:aItems[ 1 ]:SetText( "Hello" )

   SET _3DLOOK OFF

RETURN NIL
// By Giovanny Vecchi
FUNCTION CTRLS_COLORS( f_oDlgContainer )

   LOCAL lc_aCtrls := {}, lc_iFor := 0
   LOCAL lc_aItemsRadio := {}

   lc_aCtrls := f_oDlgContainer:aControls

   FOR lc_iFor := 1 TO Len( lc_aCtrls )

      IF ValType( lc_aCtrls[lc_iFor] ) == "O"

         IF lc_aCtrls[lc_iFor]:ClassName() == "TRADIO"

            aEval( lc_aCtrls[lc_iFor]:oRadMenu:aItems,                 ;
                   {|_oRadId|{ SetWindowTheme( _oRadId:hWnd, "", "" ), ;
                   _oRadId:SetColor( METRO_ORANGE, METRO_LIME ) } } )
                   
         ELSEIF lc_aCtrls[lc_iFor]:ClassName() == "TCHECKBOX"

            SetWindowTheme( lc_aCtrls[lc_iFor]:hWnd, "", "" )

            lc_aCtrls[lc_iFor]:SetColor( METRO_ORANGE, METRO_LIME )

         ENDIF

      ENDIF

   NEXT

RETURN NIL

/* // TESTRAD.RC
#include ".\..\include\WinApi.ch"

#ifndef __64__
   1 24 ".\WinXP\WindowsXP.Manifest"
#endif

#ifdef __64__
   1 24 "WinXP/WindowsXP.Manifest64"
#endif

radios DIALOG 46, 44, 127, 86
STYLE DS_MODALFRAME | 0x4L | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Testing Radio Buttons"
FONT 10, "MS Sans Serif"
{
 GROUPBOX "&Some Radios", 107, 5, 6, 70, 75, BS_GROUPBOX | WS_CHILD | WS_VISIBLE
 CONTROL "&One", 110, "BUTTON", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP, 10, 16, 28, 12
 CONTROL "&Two", 120, "BUTTON", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE, 10, 28, 28, 12
 CONTROL "T&hree", 130, "BUTTON", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE, 10, 40, 28, 12
 CONTROL "&Four", 140, "BUTTON", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE, 10, 52, 28, 12
 CONTROL "F&ive", 150, "BUTTON", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE, 10, 63, 28, 12
 PUSHBUTTON "&Next", 100, 81, 10, 41, 12, WS_CHILD | WS_VISIBLE | WS_TABSTOP
 PUSHBUTTON "&Prev", 102, 81, 24, 41, 12, WS_CHILD | WS_VISIBLE | WS_TABSTOP
 PUSHBUTTON "&Cancel", 2, 81, 38, 41, 12, WS_CHILD | WS_VISIBLE | WS_TABSTOP
}

*/


// FIN / END - kapiabafwh@gmail.com
 


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7831
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Ayuda con RadioButtom

Postby wartiaga » Tue Aug 06, 2024 5:07 pm

José Camilo wrote:Buenas tardes.
Se me presenta el siguiente problema:
En un dialogo tengo definidos 2 RADIO, que solo se activan cuando es un registro nuevo, hasta aca todo bien.
El problema sucede cuando ya pase por estos 2 RADIO y con el mouse regreso a cambiar el valor de alguno de ellos, me cambia el valor pero quita la marca del otro RADIO, solo cuando lo hago con el mouse, cuando regreso a LOS RADIO con las TECLAS de movimientos puedo cambiar cualquiera de los RADIO y NO "anula" al Otro RADIO.

Por que puede ser?

Asi los tengo definidos


REDEFINE RADIO oTipoCon VAR nTipoCont ID Con_Comercial, Con_Vivienda OF oDlgCF when agrega

REDEFINE RADIO oLey VAR nLey ID Con_2022, Con_2023 OF oDlgCF when agrega

Gracias.


Si está utilizando un editor de recursos, configure el botón de opción en botón de opción automático.
wartiaga
 
Posts: 212
Joined: Wed May 25, 2016 1:04 am


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 48 guests