API per gli alias¶
Introduzione
Le API descritte di seguito servono a creare, leggere o impostare alias di progetto.
Nella tabella seguente sono indicate le API da usare per i diversi scopi:
Scopo |
API |
|---|---|
Creare un alias |
|
Accedere al nodo a cui punta un alias noto |
|
Impostare il nodo a cui deve puntare un alias noto |
|
Accedere a un nodo di tipo Pannello dinamico noto |
InformationModel.MakeAlias(browseName)¶
Crea un alias e restituisce un oggetto C# corrispondente di tipo IUAVariable.
static IUAVariable MakeAlias(QualifiedName browseName);
Argomenti
browseName QualifiedName
BrowseName del nuovo alias.
Restituisce
IUAVariable
Oggetto C# corrispondente all’oggetto di progetto creato.
Esempio
Di seguito un esempio in cui si crea un alias nell’oggetto Panel1 del progetto Q Studio:
var modelFolder = Project.Current.Get("Model");
var alias = InformationModel.MakeAlias("CurrentMotor");
modelFolder.Add(alias);
modelFolder.SetAlias("Model", Project.Current.Find("Motor1"));
LogicObject.GetAlias(string)¶
Restituisce un oggetto C# di tipo IUANode corrispondente al nodo puntato dall’alias indicato come argomento.
static IUANode GetAlias(string aliasName);
Argomenti
aliasName string
BrowseName dell’alias.
Restituisce
IUANode
Oggetto C# corrispondente al nodo puntato dall’alias.
Esempio
Di seguito un esempio in cui l’API restituisce un oggetto C# corrispondente al nodo puntato dall’alias Motor, di cui si legge il valore della proprietà Speed, che si assegna alla variabile myMotorSpeed.
Nota
l’operatore di cast (MotorType) cambia il tipo dell’oggettorestituito dall’API, da IUANode a MotorType. Questo è utile per accedere direttamente alla proprietà Speed di refMotor.
var refMotor = (MotorType)LogicObject.GetAlias("Motor");
var myMotorSpeed = refMotor.Speed;
LogicObject.SetAlias(string, IUANode)¶
Imposta il valore di un alias, ovvero il nodo a cui punta.
void SetAlias(string aliasName, IUANode pointedNode);
Argomenti
aliasName string
BrowseName dell’alias da impostare.
pointedNode IUANode
Nodo a cui deve puntare l’alias.
Esempio
Di seguito un esempio in cui si punta l’alias MotorInstance al nodo Motor1.
var myMotorInstance = Project.Current.FindObject("Motor1");
LogicObject.SetAlias("MotorInstance"), myMotorInstance);
LogicObject.GetPanelLoader(string)¶
Restituisce un oggetto C# di tipo PanelLoader corrispondente all’oggetto di tipo Pannello dinamico indicato nell’argomento.
Nota
l’API sfrutta l’alias che il Presentation Engine genera automaticamente a runtime per il pannello (vedere Alias generati automaticamente da UNIQO).
PanelLoader GetPanelLoader(string panelLoaderName);
Argomenti
panelLoaderName string
BrowseName dell’oggetto Pannello dinamico.
Restituisce
PanelLoader
Oggetto C# corrispondente all’oggetto Pannello dinamico.
Esempio
Di seguito un esempio in cui l’API restituisce un oggetto C# corrispondente all’oggetto PanelLoader1, in cui si vuole creare un oggetto Motor.
var myPanel = LogicObject.GetPanelLoader("PanelLoader1");
var motor = InformationModel.MakeObject("Motor");
myPanel.ChangePanel("Panel1");
Vedi anche
Concetti correlati
Procedure correlate
Esempi applicativi