ED - Caret
não registrado
|
|
ENUNCIADA !
|
|
|
Postada em 10/12/2007 13:02 hs
Olá amigos.... Como faço para carregar no PopupMenu um campo de uma tabela??? O PopupMenu comporta os dados, pois são poucos Muito obrigado por qualquer ajuda
|
|
|
|
|
|
Tekki
|
UBERLÂNDIA MG - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 12/12/2007 23:12 hs
Fiz um exemplo, veja se é isto o que você quer. Primeiro passo: Criar o menu invisível (mnuTabela) com um submenu visivel (mnuColuna). Ou seja, um menu normal. Option Explicit Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Private Sub Form_Load() Set cn = New ADODB.Connection cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C: empBDTESTE.MDB;Persist Security Info=False" cn.Open Set rs = New ADODB.Recordset rs.CursorType = adOpenStatic rs.CursorLocation = adUseClient rs.Open "Select * From Estado", cn End Sub Private Sub Command1_Click() Dim i As Integer 'Antes de criar os itens no menu é necessário remover os que existem mnuColuna(0).Visible = True For i = 1 To mnuColuna.Count - 1 Unload mnuColuna(i) Next i rs.MoveMin 'Move para o primeiro registro i = 0 Do While Not rs.EOF i = i + 1 Load mnuColuna(i) mnuColuna(i).Caption = rs(0).Value rs.MoveNext Loop mnuColuna(0).Visible = False PopupMenu mnuTabela End Sub
|
|
TÓPICO EDITADO
|
|
|
|
ED - Caret
não registrado
|
|
ENUNCIADA !
|
|
|
Postada em 13/12/2007 14:39 hs
Era exatamento o que queria, no entanto surgiu um problema... No lugaR DO Command1 eu seleciono um item a partir de um list, Quando seleciono um item blz, porem quando seleciono novamente um outro item da erro na linha::: Dim i As Integer 'Antes de criar os itens no menu é necessário remover os que existem mnuColuna(0).Visible = True For i = 1 To mnuColuna.Count - 1 Unload mnuColuna(i) Next i ....esse erro é ocasionado pela inconcistencia do Unload, haja vista que ja tinha sido acionado..
|
|
|
|
Tekki
|
UBERLÂNDIA MG - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 13/12/2007 21:51 hs
Certo, cole parte do código para eu simular o problema.
|
|
|
|
ED - Caret
não registrado
|
|
ENUNCIADA !
|
|
|
Postada em 14/12/2007 08:24 hs
Nem precisa, pois usei exatamente o seu exemplo, não alterei nada. Só que ao invez de colocar ele em um botão eu o coloquei no evento click de um listbox. De qualquer forma ai vai... Tudo funciona bem quando seleciono uma cidade, mas se eu selecionar outra da erro no evento unload do mnu. QdSQL = "SELECT Campo1, Campo2 FROM CadVereadores Where Cidades = ' " & CboCidade.Text & " ';" Set RSTemp = New ADODB.Recordset RSTemp.Open QdSQL, bd, adOpenKeyset, adLockOptimistic Dim i As Integer mnuCampo(0).Visible = True For i = 1 To mnuCampo.Count - 1 Unload mnuCampo(i) Next i RSTemp.MoveMin i = 0 Do While Not RSTemp.EOF i = i + 1 Load mnuCampo(i) mnuCampo(i).Caption = RSTemp(1).Value RSTemp.MoveNext Loop mnuCampo(0).Visible = False Set RSTemp = Nothing
|
|
|
|
ED - Caret
não registrado
|
|
ENUNCIADA !
|
|
|
Postada em 14/12/2007 08:27 hs
Reiterando:: Da erro de rum-time '365' quando seleciono outra a cidade, porem na primeira seleção funciona que é uma blz
|
|
|
|