DECLARACAO NO COMPONENTE OCX
Suponhamos que eu tenho uma propriedade dentro da minha ocx ....
digamos que uma RichText ... ela tem a propriedade SelAlingmnet
na declaraçao fica:
Public Enum SelAlignment
rtfLeft = 1
rtfCenter = 2
rtfRight = 3
End Enum
qdo compilar e aplicar ao meu projeto, aparecerá na janela de propriedades >>> SelAlignment terá 3 opções
Até ai tudo bem ....... mas
Eu quero fazer uma propriedade para tamanho >>>> propriedade Zoom
só que eu quero que o usuário da OCX use somente numeros na caixa de propriedade Zoom
como eu procedo isto dentro do Public Enum
eu ja tentei
Public Enum Zoom
100
75
50
25
End Enum
e deu errado ............ qual a sintaxe correta?????
eu agradeço a quem me ajudar ...... !!!!!
digamos que uma RichText ... ela tem a propriedade SelAlingmnet
na declaraçao fica:
Public Enum SelAlignment
rtfLeft = 1
rtfCenter = 2
rtfRight = 3
End Enum
qdo compilar e aplicar ao meu projeto, aparecerá na janela de propriedades >>> SelAlignment terá 3 opções
Até ai tudo bem ....... mas
Eu quero fazer uma propriedade para tamanho >>>> propriedade Zoom
só que eu quero que o usuário da OCX use somente numeros na caixa de propriedade Zoom
como eu procedo isto dentro do Public Enum
eu ja tentei
Public Enum Zoom
100
75
50
25
End Enum
e deu errado ............ qual a sintaxe correta?????
eu agradeço a quem me ajudar ...... !!!!!
Cara, você já tentou digitar letras nas propriedades [Ô]Left[Ô] ou [Ô]Top[Ô] de qualquer componente? Ele só faz a validação quando você dá um [enter] ou sai da caixa de edição.
Ou seja, no evento [Ô]property let[Ô], você faz o teste para numéricos (isnumeric).
Ou seja, no evento [Ô]property let[Ô], você faz o teste para numéricos (isnumeric).
Public Enum Zoom
[100] = 1
[75] = 2
[50] = 3
[25] = 4
End Enum
Ou simplesmente assim:
Public Enum Zoom
[100]
[75]
[50]
[25]
End Enum
muito bem ROBIU
valeu pela dica .... deu certo sim ........
só que eu queria ir mais adiante .........
ta ficando assim na janela de propriedade do objeto ...... zoom
1 - 100
2 - 75
3 - 50
4 - 25
eu queria que só aparecesse numeros como na propriedade Top, Left, Width, etc .......
tem como??????
valeu pela dica .... deu certo sim ........
só que eu queria ir mais adiante .........
ta ficando assim na janela de propriedade do objeto ...... zoom
1 - 100
2 - 75
3 - 50
4 - 25
eu queria que só aparecesse numeros como na propriedade Top, Left, Width, etc .......
tem como??????
Wolffire, você consegue digitar letras nas propriedades Top,Left,Width e Height. O que acontece é que há um código para validar se é um numero ou não.
Na janela de propriedade vai aparecer a numeração. Quando chamar a propriedade via código não aparece os indeces. As propriedades que você citou não possui enum. O usuário digita o valor e não escolhe. Não tem enum:
Ao digitar letras, não aceita
Private lZoom As Long
Public Property Get Zoom() As Long
Zoom = lZoom
End Property
Public Property Let Zoom(ByVal Value As Long)
lZoom = Value
PropertyChanged
End Property
Ao digitar letras, não aceita
ROBIU ............... agora queria saber com faço pra oferecer para o usuário ........ as opções
25, 50, 75 e 100 .............. como opções de zoom??????
o codigo acima aceita qualquer valor certo????? so quero oferecer somente opções como ja descrita e nao queria que aparecesse assim na caixa de propriedades:
1 - 100
2 - 75
3 - 50
4 - 25
queria assim:
100
75
50
25
entendestes????????
25, 50, 75 e 100 .............. como opções de zoom??????
o codigo acima aceita qualquer valor certo????? so quero oferecer somente opções como ja descrita e nao queria que aparecesse assim na caixa de propriedades:
1 - 100
2 - 75
3 - 50
4 - 25
queria assim:
100
75
50
25
entendestes????????
Para aparecer a lista só com enum e não tem como não exibir o indice.
Agora para evitar que digite outro valor:
Agora para evitar que digite outro valor:
Public Property Let Zoom(ByVal Value As Long)
Select Case Value
Case 25
Case 50
Case 75
Case 100
Case Else
MsgBox [Ô]Valores aceitos: 25,50,75,100[Ô]
Exit Property
End Select
lZoom = Value
PropertyChanged
End Property
ROBIU .......... vc me ajudou em muito ............ la vai mais uma pergunta
o meu indice do ZOOM ta assim
25 = 0
50 = 1
75 = 2
100 = 3
125 = 4
150 = 5
175 = 6
200 = 6
225 = 7
250 = 8
Ok !!!
como faço para começar o indice 3 >>> 100% ?????
toda vez q inicia o controle ele coloca indice 0 >>>> 25%
e tem mais ........ toda vez que insiro o controle no formulario a propriedade ZOOM recebe o foco ....... pq será ?????
PELO Q VC JA ME DISSE ..... VOU TER Q USAR COM INDICE MESMO ...........
o meu indice do ZOOM ta assim
25 = 0
50 = 1
75 = 2
100 = 3
125 = 4
150 = 5
175 = 6
200 = 6
225 = 7
250 = 8
Ok !!!
como faço para começar o indice 3 >>> 100% ?????
toda vez q inicia o controle ele coloca indice 0 >>>> 25%
e tem mais ........ toda vez que insiro o controle no formulario a propriedade ZOOM recebe o foco ....... pq será ?????
PELO Q VC JA ME DISSE ..... VOU TER Q USAR COM INDICE MESMO ...........
Citação:ASHKATCHUP
VALEU PELA FORÇA ........... EU SEI Q A PROPRIEDADE NAUM ACEITA LETRAS .........
SO QUERIA FAZER ALGO CONFORME MEU PENSAMENTO ............... MAS MESMO ASSIM VOU CONTINUAR OLHANDO OUTROS MODELOS DE CODIGOS DE OCX ........ PRA VÊ SE TEM UM JEITINHO DE FAZER COMO EU QUERO ........... RSRSRSRSRSRSRSR
WolfFire:
Para deixar como default algum valor, você precisa setar no write e read properties.
Para deixar como default algum valor, você precisa setar no write e read properties.
Tópico encerrado , respostas não são mais permitidas