Utilizzo dei componenti dei moduli in VBScript
Utilizzo dei componenti nei moduli VBScript
Sebbene i moduli e i componenti siano basati sulla Visual Component Library (VCL) di Embarcadero Delphi™, Altium Designer, basato su Delphi,
Panoramica dei componenti
Il sistema di scripting gestisce due tipi di componenti: componenti visivi e non visivi. I componenti visivi vengono utilizzati per costruire l’interfaccia utente, mentre quelli non visivi sono impiegati per diverse attività, come le funzioni fornite dal TimerOpenDialogMainMenuTimerButtonEditMemo
Entrambe le tipologie di componenti compaiono in fase di progettazione, ma i componenti non visivi non sono visibili in fase di esecuzione. I componenti del
- Proprietà
- Eventi
- Metodi
Una Visible
Un
Una
Tutti i moduli di script hanno uno o più componenti. I componenti solitamente visualizzano informazioni o consentono all’utente di eseguire un’azione. Ad esempio, un’etichetta (Label) viene utilizzata per visualizzare testo statico, una casella di modifica (Edit box) consente all’utente di inserire dati, mentre un pulsante (Button) può essere utilizzato per avviare azioni.
Su un modulo è possibile inserire qualsiasi combinazione di componenti, consentendo all’utente di interagire con essi durante l’esecuzione dello script (runtime). Spetta al programmatore dello script decidere cosa succede quando un utente fa clic su un pulsante o modifica il testo in una casella di modifica.
Il sistema di scripting fornisce una serie di componenti per la creazione di interfacce utente semplici o complesse per gli script. Tutti i componenti che possono essere inseriti in un modulo si trovano nel pannello "Tavolozza degli strumenti".
Per inserire un componente in un modulo, individuare la relativa icona nel
Un componente inserito, nella sua posizione predefinita e con larghezza e altezza predefinite, può essere ridimensionato o riposizionato utilizzando il mouse o tramite il
Progettazione dei moduli di script
Un modulo di script è progettato per interagire con l’utente all’interno dell’ambiente di Altium Designer. La progettazione dei moduli di script costituisce il fulcro dello sviluppo visivo in Altium Designer.
Ogni componente posizionato su un modulo di script e ogni proprietà impostata vengono memorizzati in un file che descrive il modulo (un *.dfm*.vbs*.vbs*.dfm
Quando si lavora con un modulo di script e i suoi componenti, è possibile accedere alle relative proprietà e modificarle utilizzando il Caption
Creazione di un nuovo modulo di script
Con un progetto di script aperto, fare clic con il tasto destro del mouse sul progetto nel EditScript1.vbs *.PrjPCB
Visualizzazione di un modulo di script
Uno script deve contenere una routine che visualizzi il modulo quando lo script viene eseguito in Altium Designer. All’interno di questa routine, per il modulo viene richiamato il ShowModalVisibleShowModal
Esempio di ShowModal
Sub RunDialog DialogForm.ShowModal End Sub
L'esempio sopra riportato ShowModalRunDialogDialogFormDialogForm.ShowModal
L’ ModalResultmrOkmrCancelShowModal
sub bOKButtonClick(Sender) ModalResult := mrOK end sub sub bCancelButtonClick(Sender) ModalResult := mrCancel end sub sub RunShowModalExample 'Form Visible property must be false for ShowModal to work properly. If Form.ShowModal = mrOk Then ShowMessage("mrOk") If Form.ShowModal = mrCancel Then ShowMessage("mrCancel") end sub
Lo stesso risultato di cui sopra potrebbe essere ottenuto impostando il ModalResultmrOkmrCancelCloseModalResult
Si noti che per impostare il ModalResultSender.Cancel := TrueCancelButtonClick
Accettazione dell'input dell'utente
Uno dei componenti più comuni in grado di accettare input da un utente è il EditBoxEditBox
L’esempio riportato di seguito illustra cosa accade quando un utente fa clic sul pulsante dopo aver digitato del testo nella casella di modifica. Si noti che se un utente non ha digitato alcun testo nel componente di modifica, il gestore di eventi risponde con un messaggio di avviso
sub TScriptForm.ButtonClick(Sender) If Edit1.Text = "" Then ShowMessage("Warning - empty input!") Exit End ' do something else for the input End sub
Si noti che l’utente può spostare il focus di input sul modulo utilizzando il
Risposta agli eventi
Quando un utente seleziona un modulo o un componente, Altium Designer invia un messaggio al sistema di scripting, il quale risponde alla notifica dell’evento richiamando il metodo di gestione dell’evento appropriato.
Scrittura dei gestori di eventi
Uno script potrebbe dover rispondere agli eventi che potrebbero verificarsi su un componente durante l’esecuzione. Un evento è un collegamento tra un’azione in Altium Designer, come il clic su un pulsante, e un frammento di codice che risponde a tale azione. Il codice di risposta è un gestore di eventi, che modifica i valori delle proprietà e chiama i metodi.
Oltre alle proprietà di un componente, ciascuno dispone di un insieme di nomi di eventi. Un programmatore di script decide come reagire alle azioni dell’utente in Altium Designer. Ad esempio, quando un utente fa clic su un pulsante in un modulo, Altium Designer invia un messaggio allo script e lo script reagisce a questo nuovo evento: se è specificato l’ OnClick
Tutti questi componenti dispongono inoltre di un evento per l’acquisizione e la perdita del focus. Tuttavia, se il codice per OnEnter e OnExit non è specificato (OnEnterOnExit
Proprietà dei componenti
Per visualizzare un elenco delle proprietà di un componente, selezionare il componente e attivare la
Eventi del componente
Per visualizzare l'elenco degli eventi a cui un componente può reagire, selezionare un componente e attivare la
Ad esempio, selezionare il Button1OnClickCloseCloseClickClose
In sintesi, un gestore di eventi viene creato in uno script selezionando un componente nel modulo, oppure tramite il
In alternativa, facendo doppio clic su un pulsante, il sistema di scripting aggiungerà un gestore per un OnClick
Metodi dei componenti
Consultare il Riferimento ai componenti per un elenco dei metodi di un componente e fare riferimento alla documentazione di Embarcadero Delphi per informazioni più dettagliate.
Creazione di componenti in fase di esecuzione
I componenti possono essere creati e distrutti direttamente in uno script. Normalmente non è necessario passare l’handle del modulo, poiché lo script se ne occupa automaticamente; occorre invece passare un Nil
Ad esempio, il TOpenDialogTSaveDialog