ME AJUDEM!!! METHOD OR DATA MEMBER NOT FOUND

USUARIO.EXCLUIDOS 03/08/2007 07:47:39
#229236

Estou iniciando em VB, e estou fazendo um exemplo de uma apostila, até agora segui exatamente o exemplo, mas o programa parou em um erro que não consigo achar a solução.
Quando clico em um botão (cmdTextoAnt) aparece a mensagem "METHOD OR DATA MEMBER NOT FOUND".
Olhem o código abaixo:

Public Sub MudaCorTexto()
lblTeste.ForeColor = QBColor(vCorTexto)
With lblTexto
Select Case vCorTexto
Case 0
.Caption = "0 - Preto"
Case 1
.Caption = "1 - Azul"
Case 2
.Caption = "2 - Verde"
Case 3
.Caption = "3 - Ciano"
Case 4
.Caption = "4 - Vermelho"
Case 5
.Caption = "5 - Magenta"
Case 6
.Caption = "6 - Amarelo"
Case 7
.Caption = "7 - Branco"
Case 8
.Caption = "8 - Cinza"
Case 9
.Caption = "9 - Azul Claro"
Case 10
.Caption = "10 - Verde Claro"
Case 11
.Caption = "11 - Ciano Claro"
Case 12
.Caption = "12 - Vermelho Claro"
Case 13
.Caption = "13 - Magenta Claro"
Case 14
.Caption = "14 - Amarelo Claro"
Case Else
.Caption = "15 - Branco Brilhante"
End Select
End With
End Sub


Dim vCorTexto As Integer
Dim vCorFundo As Integer


Private Sub cmdTextoAnt_Click()
vCorTexto = vCorTexto - 1
If vCorTexto < 0 Then vCorTexto = 15
MudaCorTexto
End
End Sub


Private Sub Form_Load()
vCorTexto = 1
vCorFundo = 15
End Sub



USUARIO.EXCLUIDOS 03/08/2007 08:00:35
#229237


Mas em qual dos passos dá o erro?

Ou é no evento load do form?

boa sorte
USUARIO.EXCLUIDOS 03/08/2007 08:15:14
#229241
O form aparece, mas quando clico no botão "cmdTextoAnt" é que vem a mensagem de erro.

Quando a mensagem de erro é exibida, o texto marcado é o ".caption" abaixo do "CASE 0".

Depois que dou OK, fica uma seta amarela apontando para:
"Public Sub MudaCorTexto()"
USUARIO.EXCLUIDOS 03/08/2007 08:19:59
#229243

Por desencargo...tente assim

Function MudaCorTexto()
lblTeste.ForeColor = QBColor(vCorTexto)
Select Case vCorTexto
With lblTexto
Case 0
.Caption = "0 - Preto"
Case 1
.Caption = "1 - Azul"
Case 2
.Caption = "2 - Verde"
Case 3
.Caption = "3 - Ciano"
Case 4
.Caption = "4 - Vermelho"
Case 5
.Caption = "5 - Magenta"
Case 6
.Caption = "6 - Amarelo"
Case 7
.Caption = "7 - Branco"
Case 8
.Caption = "8 - Cinza"
Case 9
.Caption = "9 - Azul Claro"
Case 10
.Caption = "10 - Verde Claro"
Case 11
.Caption = "11 - Ciano Claro"
Case 12
.Caption = "12 - Vermelho Claro"
Case 13
.Caption = "13 - Magenta Claro"
Case 14
.Caption = "14 - Amarelo Claro"
Case Else
.Caption = "15 - Branco Brilhante"
End With

End Select
End Function


Testa ae...e avisa..valew

Boa sorte
USUARIO.EXCLUIDOS 03/08/2007 08:28:28
#229246
Ainda nao deu certo.

O erro agora ficou assim:

STATMENTS AND LABELS INVALID BETWEN SELECT CASE AND FIRST CASE.


USUARIO.EXCLUIDOS 03/08/2007 08:39:05
#229251

Tira o With..e faça o código normal

Case 0
lblTexto.Caption = "0 - Preto"
só pode ser isso..testei aki e funcionou
USUARIO.EXCLUIDOS 03/08/2007 08:49:02
#229258
Estranho,
Quando coloco lblTexto. após o ponto aparecem somente as opções "COUNT" "ITEM" "LBOUND" "UBOUND".

Tentei colocar lblTexto.Item.Caption e também não deu certo.


USUARIO.EXCLUIDOS 03/08/2007 08:59:08
#229259

Hummm....vc tem index desse componente n tem? são varios com o mesmo nome? e muda o index..

por isso ta dando o erro, tenta isso...mas vai funcionar pra um só.opor enqaunto

lblTexto(0).Caption = "0 - Preto"


se der certo terá q fazer um For com essa select dentro...veja se entende

For X = 0 to Qtde 'Onde Qtde é o numero de index maior q vc tem de labels iguais

lblTeste.ForeColor = QBColor(vCorTexto)
Select Case vCorTexto
Case 0
lblTexto(X).Caption = "0 - Preto"
bla..bla bla
End Select

NExt X

entendeu ae?

espero q de certo

USUARIO.EXCLUIDOS 03/08/2007 09:36:59
#229266
Fiz como disseste e agora dá outro erro:

Run-time error '340':

Control array element '1' doesn't exist

Abaixo o código com as alterações:

Dim vCorTexto As Integer
Dim vCorFundo As Integer


Function MudaCorTexto()
For X = 0 To 15 'Onde 15 é o numero de index maior q vc tem de labels iguais
lblTeste.ForeColor = QBColor(vCorTexto)
Select Case vCorTexto
Case 0
lblTexto(X).Caption = "0 - Preto"
Case 1
lblTexto(X).Caption = "1 - Azul"
Case 2
lblTexto(X).Caption = "2 - Verde"
Case 3
lblTexto(X).Caption = "3 - Ciano"
Case 4
lblTexto(X).Caption = "4 - Vermelho"
Case 5
lblTexto(X).Caption = "5 - Magenta"
Case 6
lblTexto(X).Caption = "6 - Amarelo"
Case 7
lblTexto(X).Caption = "7 - Branco"
Case 8
lblTexto(X).Caption = "8 - Cinza"
Case 9
lblTexto(X).Caption = "9 - Azul Claro"
Case 10
lblTexto(X).Caption = "10 - Verde Claro"
Case 11
lblTexto(X).Caption = "11 - Ciano Claro"
Case 12
lblTexto(X).Caption = "12 - Vermelho Claro"
Case 13
lblTexto(X).Caption = "13 - Magenta Claro"
Case 14
lblTexto(X).Caption = "14 - Amarelo Claro"
Case Else
lblTexto(X).Caption = "15 - Branco Brilhante"

End Select
Next X
End Function





Private Sub cmdTextoAnt_Click()
vCorTexto = vCorTexto - 1
If vCorTexto < 0 Then vCorTexto = 15
MudaCorTexto
End
End Sub


Private Sub Form_Load()
vCorTexto = 1
vCorFundo = 15
End Sub



USUARIO.EXCLUIDOS 03/08/2007 09:54:51
#229273
Citação:

ABDALA escreveu:
Estranho,
Quando coloco lblTexto. após o ponto aparecem somente as opções COUNT ITEM LBOUND UBOUND .

Tentei colocar lblTexto.Item.Caption e também não deu certo.




esse erro ocorre quando há uma referência errada no nome, ex:

Se no Form não existe uma textbox com o nome text_jasei e vc digitar na janela de código do botão command1

Private Sub Command1_Click()

text_jasei. 'quando vc digitar o "." só irá aparecer COUNT, ITEM LBOUND, UBOUND

mas se vc digitar o nome de um textbox que faça parte do Form assim que vc digitar o nome do textbox e digitar o "." irá aparecer todas as opções (métodos) referentes ao textbox, isso acontece com todos os controles...textbox, label's, command's, combo's etc
USUARIO.EXCLUIDOS 03/08/2007 10:05:29
#229282
Dei um duplo clique no label e veja o que aparece:


Private Sub lblTexto_Click(Index As Integer)

End Sub


Ou seja, ele existe sim. [S42]
Página 1 de 2 [16 registro(s)]
Tópico encerrado , respostas não são mais permitidas