![]() |
Programming Guide |
WideStudio Index Table of contents |
Como acessar instâncias GUI
Durante o procedimento de eventos, o acesso às instâncias é o ponto mais fundamental. Então, abordaremos várias maneiras de acessar instâncias.
- Acessando instância pelo parâmetro do procedimento de evento.
- Acessando a instância pelo gerenciamento de instância.
Utilizamos este recurso exceto quando o evento de procedimento é ajustado.
- Acessando uma instância global diretamente
É um método fácil e apresenta boa performance, You can use the global instance to access directly. it is easy to access and is good performance, mas reduz a portabilidade..
Acessando instância pelo parâmetro do procedimento de evento
void event_procedure(WSCbase* object){O ponteiro: o objeto é a instância cliente do procedimento de evento que é disparada. O tipo é WSCbase*, então, pode-se acessar o método WSCbase, mas é necessário fazer uma coerção sobre o ponteiro pelo método utilizando "cast()" para acessar outras subclasses. Consulte o capítulo sobre coerção de subclasses.
//accessing the instance.
object->setProperty(WSNlabelString,"HELLO WORLD");
}
Acessando a instância pelo gerenciamento de instância
O gerenciamento de instância retorna o nome da instância.
Clase de gerencimanto de instância Método de aquisição de instância WSCbaseList WSCbaseList* WSGIappObjectList()
O acesso da instância é feito como mostrado a seguir:
//to access WSGIappObjectList()
#include "WSCbaseList.h"
void event_procedure(WSCbase* object){
// Acquisition of the instance(1)
char* class_name = "WSCvlabel"; //procura da instância WSCvlabel class
char* obj_name = "newvlab_001"; //o nome da instância é newvlab_001
WSCbase* object = WSGIappObjectList()->getInstance(class_name,obj_name);
object->setProperty(WSNlabelString,"HELLO WORLD");
//Acquisition of the instance(2)
char* class_name2 = "WSCbase"; //procura a partir de todas as instâncias.
char* obj_name2 = "newvlab_002"; //o nome da instância é newvlab_002
WSCbase* object2 = WSGIappObjectList()->getInstance(class_name2,obj_name2);
object2->setProperty(WSNlabelString,"HELLO WORLD");A variável: o objeto é a instância procurada pelo nome específico de classe e o nome da instância específica. Se não houver o desejso de especificar o nome da classe, pode-se passar "WSCbase", realizando-se a procura por todas as instâncias.
Acessando a instância global diretamente
Torne a instância global, e então poderá acessá-la diretamente. Consulte o capítulo sobre "Configuração de Instância Global" no Guia de Usuário, para saber como proceder.
#include "WSCvlabel.h" //to access WSCvlabel class
void event_procedure(WSCbase* object){
//extern of the global instance
extern WSCvlabel* newvlab_001;
//Access the instance of WSCvlabel*: newvlab_001
newvlab_001->setProperty(WSNlabelString, "HELLO WORLD");
Copyright(C) WideStudio Development Team, 1999-2005 | Last modified: Jan 05, 2005 |