Newsgroup: it.comp.software.cad
Titolo: Scalare lo stile linea di Microstation 8

A un bottone  ho associato questo  codice:
Private Sub CommandButton1_Click()
CadInputQueue.SendCommand "DIALOG LSTYLESETUP"
End Sub
In poche parole, cliccandoci sopra, si apre la maschera della 
personalizzazione dello stile di linea di Microstation dalla quale posso 
impostare il fattore di scala 5x.
Voglio evitare di fare questa operazione a mano, nel senso che, anzich� far 
apparire la finestra, voglio che la macro setta in automatico la scala 
(quando clicco sul bottone).
Grazie anticipatamente
nero23 

 Voglio evitare di fare questa operazione a mano, nel senso che, anzichè far


tutto fatto.
Per avere un codice di partenza, ho utilizzato il registratore di macro (con 
VBA di Office Excell faccio cosi...), per� ho visto che il codice
generato, non funziona se copiato all'interno del VBA (CommandButton)
Ad esempio, per cambiare lo stile linea, ho scritto questo codice 
all'interno del CommandButton e funziona perfettamente:
----------------------------------------------------------------------------
Private Sub CommandButton1_Click()
ActiveSettings.LineStyle = ActiveDesignFile.LineStyles.Find(2)
End Sub
-----------------------------------------------------------------------------
Con  il registratore di macro, ottengo quest'altro codice:
-------------------------------------------------------------------------------
Sub main
    Dim startPoint As MbePoint
    Dim point As MbePoint, point2 As MbePoint
'   Avvia un comando
    MbeSendCommand "ACTIVE STYLE 2"
'   Imposta una variabile associata ad una finestra di dialogo
        MbeSetAppVariable "CHANGEBY", "changeElementInfo.currentStyle", 2&
End Sub
----------------------------------------------------------------------------------
Come vedi, sono diversi.
Ciao
nero23

<utilizza il resistratore di macro, fa l'operazione che ti serve, ed e'
<tutto fatto.
Questo � il codice ottenuto con il registratore di macro:
Sub main
    Dim startPoint As MbePoint
    Dim point As MbePoint, point2 As MbePoint
'   Imposta una variabile associata ad una finestra di dialogo
    MbeSetAppVariable "LSTYLE", "tcb->lineStyle.scale", 5#
End Sub
Se lo inserisco all'interno del commandButton, non funziona...
Dove sbaglio??
Nero23 

In privato, 
a.tr...@gmail.com
 mi ha dato la soluzione definitiva.
Questo � il codice per aumentare la scala dello stile linea di Microstation:
Private Sub CommandButton1_Click()
'   Set a variable associated with a dialog box
    SetCExpressionValue "tcb->lineStyle.scale", 5
End Sub
a.tr...@gmail.com
 SEI GRANDEEEEE
Ancora grazie per la tua pazienza.
Ciao

Ho dimenticato di aggiungere il codice che attiva la scala (avevo riportato 
solo il codice che imposta la scala, senza attivarla)
SetCExpressionValue "tcb->lineStyle.scale", 5     'Setta la scala dello 
stile di linea a 5x
SetCExpressionValue "tcb->lineStyle.modifiers", 1&, 1&  'Attiva la scala
(SetCExpressionValue "tcb->lineStyle.modifiers", 1&, 1&) 'Disattiva la scala
Codice completo:
Private Sub CommandButton1_Click()
'Set a variable associated with a dialog box
SetCExpressionValue "tcb->lineStyle.modifiers", 1&, 1&
SetCExpressionValue "tcb->lineStyle.scale", 5
End Sub
"NERO23" <TOGLIMI...@TOGLIMIvirgilio.it> ha scritto nel messaggio 
news:4b578252$0$1118$4faf...@reader2.news.tin.it...
