crio 2 combobox o primeiro pego dados da dbf , o segundo espera a opção de escolha para preencher
para facilitar o entendimento vamos pensar da seguinte forma Estado e capital ok
então se eu escolher no combo1 "Pernanbuco" , no combo2 seria preenchido como "Recife"
segue o codigo que fiz para que os amigos entendam, fiz no modo mais simples possivel
uso minigui extended
#include 'minigui.ch'
FUNCTION Main()
DEFINE WINDOW Form_1 ;
AT 90,90 ;
WIDTH 700 ;
HEIGHT 350 ;
TITLE "erro combobox" ;
MAIN
define tab tab_Form_1 ;
at 34,10 ;
width form_1.width -40 height 250 ;
font 'ms sans serif' size 10 bold
define page "Combo"
define frame fr_grup
row 35
col 30
width 170
height 55
fontname 'tahoma'
fontsize 9
caption "Informe o Grupo"
transparent .t.
end frame
define comboboxex cb_grupo
row 55
col 40
width 150
items {"QUARTO","SALA","COZINHA","BANHEIRO","FRENTE","QUINTAL"}
value 1
tooltip "Escolha o Grupo"
fontname 'tahoma'
fontsize 10
on change {||Atualiza_Grupos()}
end comboboxex
define frame fr_sgrup
row 35
col 240
width 170
height 55
fontname 'tahoma'
fontsize 9
caption "Informe o Sub-Grupo"
action msginfo()
transparent .t.
end frame
*
define combobox cb_sgrupo
row 55
col 250
width 150
* items
value 1
tooltip "Escolha o Sub-Grupo"
fontname 'tahoma'
fontsize 10
end comboboxex
end page
end tab
on key ESCAPE of Form_1 action Form_1.release
END WINDOW
Form_1.Activate
RETURN NIL
*-------------------------------------------------------------------------------
Static Procedure Atualiza_Grupos(Arg1)
private aNewValues:={"CAMA","SOM","FOGAO","PIA","GARAGEM","CACHORRO"}
DoMethod( "Form_1", "cb_sgrupo", 'SetArray', aNewValues )
* Form_1.cb_sgrupo.SetArray := aNewValues // Se eu tentar desta forma da erro, o curioso é que esta no doc da minigui
Return .t.