405x
004195
2019-11-07

Pergunta

Como é que posso modificar posteriormente uma barra através da interface COM?


Resposta:

Para modificar um elemento existente, é necessário obter a interface para o elemento correspondente, no caso do presente exemplo, uma barra:

Dim iModel As RSTAB8.model
Set iModel = GetObject(, "RSTAB8.Model")
iModel.GetApplication.LockLicense
    
Dim iModData As IModelData
Set iModData = iModel.GetModelData
    
Dim iMem As RSTAB8.IMember
Set iMem = iModData.GetMember(1, AtNo)

Utilize este código para obter a interface para a barra 1, que já deve estar criada. Em seguida, pode utilizar o método .GetData () da interface para obter os dados da barra.

Se pretende modificar dados (a rotação da barra, tal como no exemplo), pode depois transferi-los para o programa dentro de um bloco Prepare-/FinishModification com o método .SetData ().


Dim mem As RSTAB8.Member
mem = iMem.GetData
    
mem.Rotation.Angle = 0.5
mem.Rotation.Type = RSTAB8.Angle
   
iModData.PrepareModification
iMem.SetData mem
iModData.FinishModification