ACTIVEX

USUARIO.EXCLUIDOS 09/03/2005 18:41:12
#72019
Oi, pessoal.

Estou construindo um activex que possui uma propriedade caption. Gostaria de saber como atualizar o controle enquanto estou digitando o valor do caption na janela de propriedades.
LCSD 09/03/2005 21:51:08
#72039
Resposta escolhida
Erivh

Atualização de Propriedades é dada pelo LET, se você tem uma Caption no Activex, teste por exemplo:

Public Property Let Caption(ByVal New_Value As String)
m_Caption = New_Caption
'PropertyChanged "Caption"
End Property

'E no Get, que recupera o valor

Public Property Get Caption() As String
Caption = m_Caption
End Property


Mas ainda tem o WriteProperties e o ReadProperties, usados para gravar as Propriedades alteradas e ler. Seria bom baixar os 2 Artigos abaixo:

PALETA CORES - TUTORIAL ACTIVEX

COMPONENTE CALENDARIO ARTIGO, CODIGO FONTE E OCX

São exemplos com Artigo, Projeto e Componente inclusos, bem didáticos.
[s92]
USUARIO.EXCLUIDOS 16/03/2005 17:02:03
#73270
KpellaJr,

Testei o trecho de código mas ainda não consegui o resultado esperado: tudo continuou como antes. O efeito esperado é o mesmo dos controles label e command, por exemplo.

Valeu.

Erivaldo.
WEBMASTER 16/03/2005 17:08:17
#73272
Utilize o evento Change do controle.
LCSD 17/03/2005 01:28:07
#73315
Erivaldo

Você esqueceu de responder como estão definidos WriteProperties e o ReadProperties, é neles que se gravam e recuperam as Propridades definidas em Tempo de Desenvolvimento, neles podem estar ocorrendo os problemas.

Aliás, sem você postar o código do Activex será um chutà'metro atrás do outro, os 2 Artigos que postei mostram um passo a passo como fazer um Activex, inclusive as funções de cada tipo de rotina. Você leu os Artigos[?
[s92]

LCSD 17/03/2005 08:04:55
#73324
Por exemplo, deveria ter algo neste sentido

Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
m_ForeColor = PropBag.ReadProperty("ForeColor", m_def_ForeColor)
End Sub


Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
Call PropBag.WriteProperty("ForeColor", m_ForeColor, m_def_ForeColor)
End Sub


Na WriteProperties se grava os valores modificados, presentes na variável m_ForeColor, se for igual a m_def_ForeColor, que é um valor DEFAULT não são gravados, serão utilizados os valores Default neste caso.

Na ReadProperties, os valores gravados são recuperados, se não houverem valores são usados os Default. Com isto ganha-se espaço e velocidade, porque valores DEFAULT não precisam ser gravados em cada utilização de um Activex.
[s92]
Tópico encerrado , respostas não são mais permitidas