Acá está la solución, ahora tengo que llevarlo a mi FORM.
oForm=Createobject("myForm")
oForm.AddObject('myGrid1','myGrid')
oForm.myGrid1.column1.header1.Caption = "Name"
oForm.myGrid1.column2.header1.Caption = "Color"
oForm.myGrid1.column2.Sparse = .F.
oForm.myGrid1.column2.AddObject("Habilitar1", "Habilitar")
&&("TextRed1","TextRed")
oForm.myGrid1.column2.AddObject("DesHabilitar1","Deshabilitar")
*oForm.myGrid1.column2.AddObject("TextYellow1","TextYellow")
oForm.Show(1)
Define Class myForm As Form
AutoCenter = .T.
Procedure Load()
Create Cursor myCursor (Name C(20),Color C(10))
Insert Into myCursor (Name,Color) Values ("MIKE","BLUE")
Insert Into myCursor (Name,Color) Values ("JOHN","RED")
Insert Into myCursor (Name,Color) Values ("PAUL","YELLOW")
Go Top
Endproc
Enddefine
Define Class myGrid As Grid
Visible = .T.
ColumnCount = 2
Width = 200
Top = 20
Left = 20
Procedure Init()
With This
.column2.DynamicCurrentControl = "dynamic()"
This.Parent.LockScreen = .F.
Endwith
Endproc
ENDDEFINE
DEFINE CLASS Habilitar As CommandButton
Caption = "Habilitar"
Visible = .T.
Procedure Click
This.Parent.Parent.Parent.LockScreen = .T.
This.Parent.Parent.Init()
ENDDEFINE
DEFINE CLASS DesHabilitar As CommandButton
Caption = "DesHabilitar"
Visible = .T.
Procedure Click
This.Parent.Parent.Parent.LockScreen = .T.
This.Parent.Parent.Init()
ENDDEFINE
Define Class TextRed As TextBox
BackColor = Rgb(255,0,0)
Visible = .T.
Procedure Click
This.Parent.Parent.Parent.LockScreen = .T.
This.Parent.Parent.Init()
Endproc
Enddefine
Define Class TextBlue As TextBox
BackColor = Rgb(0,128,255)
Visible = .T.
Procedure Click
This.Parent.Parent.Parent.LockScreen = .T.
This.Parent.Parent.Init()
Endproc
Enddefine
Define Class TextYellow As TextBox
BackColor = Rgb(255,255,0)
Visible = .T.
Procedure Click
This.Parent.Parent.Parent.LockScreen = .T.
This.Parent.Parent.Init()
Endproc
Enddefine
Function Dynamic
Do Case
Case myCursor.Color = "RED"
Return "Habilitar1"
Case myCursor.Color = "BLUE"
Return "DesHabilitar1"
Case myCursor.Color = "YELLOW"
Return "textYellow1"
Endcase
Endfunc
Leído en http://www.tek-tips.com/faqs.cfm?fid=1939
GRACIAS A TODOS.
De: [email protected] [mailto:[email protected]] En nombre de Alejandro Paciotti
Iacchelli
Enviado el: domingo, 22 de abril de 2012 10:37 p.m.
Para: GUFA List Member
Asunto: [GUFA] Command Button en un grid
Y en este no tira ningún error, pero no funciona.
En el DynamicCurrentControl puse: =IIF(ArticulosLocales.Habilitado,
"Command1", "Command2")
Pero naa.
A TODOS, MUCHAS GRACIAS.
De: [email protected] [mailto:[email protected]] En nombre de Eduardo E. Tkachuk
Enviado el: sábado, 21 de abril de 2012 08:42 p.m.
Para: GUFA List Member
Asunto: [GUFA] Command Button en un grid
Upa! , nop , yo mismo me corrijo. Este control es para controlar los objetos
que están colocados dentro de la columna, ja! , tendrías , para usarlo , que
colocar tres botones con acciones distintas cada uno, en su click
obviamente, o tantos como necesites y con el iff() , en el
DynamicCurrentControl , activas uno u el otro, según validación contra tabla
o cursor como puse en el mail anterior.
Un desliz
Saludos de nuevo
De: [email protected] [mailto:[email protected]] En nombre de Eduardo E. Tkachuk
Enviado el: Sábado, 21 de Abril de 2012 08:23 p.m.
Para: GUFA List Member
Asunto: [GUFA] Command Button en un grid
Alejandro
Quizás lo puedas resolver dentro de la columna donde está el botón colocado
, con la propiedad DynamicCurrentcontrol . Proba poner un iif() validando
contra el campo que necesites del cursor o la tabla.
Después contadnos si estas más cerca de la solución
Saludos
Eduardo
De: [email protected] [mailto:[email protected]] En nombre de Alejandro Paciotti
Iacchelli
Enviado el: Sábado, 21 de Abril de 2012 08:05 p.m.
Para: GUFA List Member
Asunto: [GUFA] Command Button en un grid
Creo que no. Ya que necesito que cuando cargo todo el cursor en el grid cada
botón tome un caption distinto dependiendo del valor del registro. (Ej: Si
el valor del campo es 1. Agregar, 2. Borrar. 3. Modificar).
Gracias.
PD: Temporalmente lo dejé y le puse un menú contextual a cada objeto del
grid. Con eso me arreglo por ahora.
De: [email protected] [mailto:[email protected]] En nombre de Omar Bellio
Enviado el: sábado, 21 de abril de 2012 08:02 p.m.
Para: GUFA List Member
Asunto: [GUFA] Command Button en un grid
Llamando a una función en el AfterRowColChange?
De: [email protected] [mailto:[email protected]] En nombre de Alejandro Paciotti
Iacchelli
Enviado el: sábado, 21 de abril de 2012 07:46 p.m.
Para: GUFA List Member
Asunto: [GUFA] Command Button en un grid
Estimados colisteros: ¿ alguien tiene idea como puedo cambiar dinámicamente
el caption de un botón que está dentro de una grid dependiendo del valor de
cada registro ?
Desde ya, muchas gracias.
Saludos.
Alejandro Paciotti Iacchelli