Objeto básico e portanto com poucas propriedades, eventos e métodos. TWOLRoot é mais primitivo dos objetos WOL.
Arquivo fonte: WOLGUI00.PP.
.
* Esse objeto pode ser substituído por TComponent da FCL definindo-se WOLROOTISCOMPONENT no include WOLGUI.INC.
É o objeto base para aqueles que necessitam de propriedades, métodos e eventos básicos para terem uma funcionalidade mas sem serem visíveis.
É responsável por alocação de recursos do sistema para funcionar. É descendente de TWOLRoot.
Código fonte: WOLGUI01.PP.
Propriedades |
|
—Left:TWOLInteger |
Usada para indicar a posição do lado esquerdo do objeto visual. |
—Top:TWOLInteger |
Usada para indicar a posição do lado superior do objeto visual. |
—Width:TWOLInteger |
Usada para indicar a largura do objeto visual. |
—Height:TWOLInteger |
Usada para indicar a altura do objeto visual. |
—Parent:TWOLVisualControl |
Usada para atribução do objeto pai do objeto visual. |
—PopupMenu:TWOLPopupMenu |
Usada para associar um menu popup para o objeto. |
—Caption:String |
Usada para atribuir um título que apareça no objeto. |
—Color:TWOLColor |
Usada para atribuir uma cor ao objeto. |
—Hint:String |
Usada para atribuir uma dica ao objeto. As dicas são ligadas ou desligadas dependendo da presença do texto nessa propriedade. |
—Enabled:Boolean |
Usada para habilitar ou não o objeto visual. Um objeto visual desabilitado não recebe mensagens. |
—Visible:Boolean |
Usada para tornar visível ou não um objeto visual. |
—Cursor:TWOLCursor |
Usada para indicar um ponteiro de mouse para o objeto visual. |
—TextAlign:TWOLJustifySet |
Usada para indicar a forma de justificação do texto de um objeto. |
—WindowRect:TWOLRect |
Usada para atribuir ou recuperar o valor do retângulo da janela do objeto visual. |
—ClientRect:TWOLRect |
Usada para recuperar o retângulo da área cliente do objeto visual. Esse valor depende da GUI e só ela pode modificar. |
—State:TWOLState |
Usada para recuperar ou modificar o estado do objeto. |
—Style:TWOLGUIStyles |
Usada para recuperar ou atribuir um estilo para o objeto. O estilo determina aparência e comportamento de objetos visuais. |
—Changed:Boolean |
Usada para recuperar o valor de alguma mudança que o objeto tenha sofrido. Se for lida, volta a ter o valor False até que uma nova modificação seja feita no objeto. |
—Loaded:Boolean |
Usada para indicar o estado de carregado e pronto para rodar do objeto. |
—Params:TWOLParams |
Usada para recuperar e atribuir os valores de criação do objeto. TWOLParams guarda uma série de valores, como posição, altura, largura, cor, etc. |
—ParamRect:TWOLRect |
Usada para recuperar o valor da dimensão do objeto contido nos valores de criação. |
—wolClass:TWOLClassType |
Usada para recuperar o tipo da classe do objeto visual. |
|
Métodos Públicos |
—constructor Create(AOwner:TWOLRoot); override; |
Usado para criar o objeto. |
—destructor Destroy; override; |
Usado para destruir o objeto da memória. |
—procedure AddStyle(Estilo:TWOLGUIStyles); |
Usado para adicionar um estilo ao objeto. O estilo determina um ou mais tipo de comportamento de objetos visuais |
—procedure DelStyle(Estilo:TWOLGUIStyles); |
Usado para excluir um estilo do objeto.
|
—function ExistsStyle(Estilo:TWOLGUIStyle):Boolean; |
Usada para verificar se um estilo está presente ou não no objeto. |
—function isHandleZero:Boolean; |
Usada para verificar se o número do manipulador (Handle) é zero. Um objeto visual recebe um número que o representa. |
—procedure Change; virtual; |
Usado para modificar a propriedade Changed. Essa propriedade, quando lida, volta a ser False |
—procedure Load; virtual; |
Usado para indicar o carregamento em memória e a prontidão do objeto para ser executado. |
—procedure Click; virtual; |
Usado para simular um click em um objeto que suporte a ação do mouse. |
—function DefaultProc(var Message:TWOLMessage):TWOLLongint; virtual; |
Usada para processamento padrão da GUI quando não houver processamento da WOL para mensagem no objeto. |
—function SendMessage(var Msg:TWOLMessage):TWOLSmallInt; virtual; abstract; |
Usada para enviar uma mensagem diretamente à GUI. |
—function PostMessage(Msg:Cardinal; WParam:Cardinal; LParam:Cardinal):Cardinal; virtual; abstract; |
Usada para postar uma mensagem diretamente à GUI (em geral, a função posta a mensagem retorna, ao invés de ficar
esperando resposta, como a sendmessage). |
—procedure AllocResources; virtual; |
Usado para alocar recursos da GUI (memória) para as diversas peças do objeto durante a criação. |
—procedure FreeResources; virtual; |
Usado para liberar os recursos alocados na criação pelas diversas partes do objeto. |
—function WndPaint(var Message:TWOLMessage):Boolean; virtual; abstract; |
Usada para processar mensagens de pintura de objetos visuais. Mas recebe outras mensagens. |
—function WndKeyboard(var Message:TWOLMessage):Boolean; virtual; abstract; |
Usada para processar mensagens de teclado. No entanto recebe outras mensagens. |
—function WndMouse(var Message:TWOLMessage):Boolean; virtual; abstract; |
Usada para processar mensagens de mouse. No entanto recebe outras mensagens. |
—function WndNotify(var Message:TWOLMessage):Boolean; virtual; abstract; |
Usada para processar mensagens de notificação da GUI. No entanto recebe outras mensagens. |
—function WndCommand(var Message:TWOLMessage):Boolean; virtual; abstract; |
Usada para processar mensagens de comando da GUI. No entanto outras mensagens. |
—function WndProc(var Message:TWOLMessage):Boolean; virtual; abstract; |
Usanda para processar mensagens diversas da GUI. Esta é a função principal de processamento de mensagens.
Antes de processar a mensagem, a função chama as outras funções Wnd*. Se uma dessas funções retorna True, o restante das
funções não será processada. |
—function WndText(var Message:TWOLMessage):Boolean; virtual; abstract; |
Usada para processar mensagens de texto. No entanto, outras mensagens são recebidas pela função. |
—function GetWOLText:PChar; virtual; |
Usada para se recuperar o texto de uma janela na forma de PChar. Isso principalmente para textos longos, como os contidos em memorandos. |
—procedure SetWOLText(Value:PChar); virtual; |
Usado para apontar o texto de uma janela igual ao valor contido em Value. Útil em objetos com textos longos, como memorandos. |
|
Eventos Públicos |
—OnDesigner:TDesignerFunction |
Usado para processar mensagens do objeto quando este está sendo criado pelo WOLDesigner. Ao ser criado pelo editor, automaticamente o procedimento é associado ao objeto. |
—OnCreate:TWOLEvent |
Evento disparado quando o objeto é criado. |
—OnDestroy:TWOLEvent |
Evento disparado quando o objeto é destruído. |
—OnClick:TWOLEvent |
Evento disparado quando o objeto visual é clicado. |
—OnDblClick:TWOLMouseEvent |
Evento disparado quando ocorre um duplo click sobre o objeto visual. |
—OnMouseDown:TWOLMouseEvent |
Evento disparado quando um botão do mouse é baixado sobre o objeto visual. |
—OnMouseMove:TWOLMouseEvent |
Evento disparado quando o mouse é movido sobre um objeto visual. |
—OnMouseUp:TWOLMouseEvent |
Evento disparado quando o botão do mouse é levantado sobre o objeto. |
É o objeto mais próximo da GUI em uso. Por si só não é visível, mas apresenta todas as características de um objeto visível de forma
a facilitar a derivação e apresentar qualquer objeto que se possa ver na janela. Todos os objetos de janela devem ser derivados
diretamente desse. É descendente de TWOLBase. Código fonte: WOLGUI01.PP.
Propriedades |
Descrição |
—Controls[Index:Integer]:TWOLBase |
Recupera o objeto de índice index, baseado na ordem de criação. |
—Focused:Boolean |
Indica se o objeto de janela tem o foco de teclado ou não. |
—Brush:TWOLBrush |
Indica um objeto brush associado ao objeto de janela. |
—Font:TWOLFont |
Indica o objeto font associado ao objeto de janela. |
—Canvas:TWOLCanvas |
Indica um objeto canvas associado ao objeto de janela. |
—Ctrl3D:Boolean |
Indica se o objeto de janela tem ou não aparência 3D. |
—Handle:TWOLHandle |
Indica o número do handle do objeto de janela. |
—ControlCount:Integer |
Indica a quantidade objetos de janela contidos no objeto corrente. |
—TabOrder:TWOLInteger |
Indica a ordem de tabulação do objeto de janela. Se não há ordem, o valor é -1. Essa propriedade só tem efeito em objetos que possam receber o foco do teclado. |
—TabStop:Boolean |
Indica que o objeto de janela é um ponto de parada da tabulação. Se objeto não pode receber o foco do teclado, esse valor será False. |
—Color:TWOLColor |
Indica o valor da cor de um objeto de janela. A cor é sempre no formato RGB. |
—Border:TWOLBorderSet |
Indica o tipo de bordo que o objeto de janela deve ter. |
—WindowAlign:TWOLWinAlign |
Indica o tipo de alinhamento que o objeto de janela deve ter. |
|
Métodos Públicos |
—procedure Repaint; virtual; |
Usado para forçar o redesenho de um objeto de janela. |
—function IsPaintMsg(const Message:TWOLMessage):Boolean; virtual; |
Usada para se verificar se a mensagem passada é de pintura do objeto de janela. |
—procedure UpdateBounds; virtual; |
Usada para atualizar os valores do retângulo de dimensão do objeto de janela. |
—function IsControlMouseMsg(var Message:TWOLMessage):Boolean; |
Usada para verificar se a mensagem passada se dirige a um determinado objeto de janela. |
—procedure RemoveControl(Ctrl:TWOLBase); virtual; |
Usado para remover um objeto de janela da lista de filhos do seu pai ou dono. |
—procedure InsertControl(Position:TWOLSmallInt; Ctrl:TWOLBase); virtual; |
Usado para inserir um objeto de janela na lista do seu objeto pai ou dono. |
—function FindTabControl(Ctrl:TWOLVisualControl; aTabOrder:TWOLInteger; GoNext:Boolean):TWOLVisualControl; |
Usada para procurar um determinado controle na ordem de tabulação. Se não for encontrado, retorna nil. |
—function SelectTabControl(Ctrl:TWOLVisualControl; GoNext:Boolean):Boolean; |
Usada para selecionar um objeto visual seguinte ou anterior ao atual com relação à tabulação. |
—procedure AlignChildren(theRect:TWOLRect); virtual; |
Usada para alinhar os filhos do objeto visual pela sua área cliente ou pela área determinada por theRect. A
distribuição de cada objeto é determinada pela propriedade WindowAlign. |
—function Broadcast(var Message):Boolean; virtual; |
Usada para enviar uma mensagem a todos os objetos visuais filhos. Se um deles processar a mensagem, o retorno será True. |
—procedure CreateGUIParams(var aParams:TWOLParams; const wClass:TWOLClassType); virtual; |
Usado para se comunicar com o kernel da GUI e recuperar os estilos nativos para uma classe. Esses estilos irão determinar o comportamento e o visual do objeto de janela. |
—procedure CreateWnd(var aParams:TWOLParams); virtual; |
Usado para interagir com o kernel para criar efetivamente a janela com os recursos da GUI. |
—procedure DestroyWnd; virtual; |
Usado para destruir a janela do objeto visual. Não destrói o objeto da memória. |
—procedure RecreateWnd; virtual; |
Usado para recriar a janela do objeto visual. Muitas vezes, a mudança de um estilo requer a recriação da janela para refletir o novo comportamento e/ou visual. |
—function DefaultProc(var Message:TWOLMessage):TWOLLongint; override; |
Retorna o valor padrão do procedimento de janela no Windows. Noutras GUIs, geralmente não tem equivalente. |
—procedure SetFocus; virtual; |
Usado para dar a atenção do teclado ao objeto de janela. Nem todos os objetos de janela podem manipular o teclado. |
—function FindControl(aHandle:TWOLHandle):TWOLVisualControl; virtual; |
Usada para encontrar um objeto de janela a partir de seu número de manipulador ou handle. |
—function FindControlByName(aName:String):TWOLVisualControl; virtual; |
Usada para encontrar um objeto de janela a partir do seu nome. |
—procedure ScrollBy(DeltaX, DeltaY:TWOLSmallInt); |
Usada para rolar em qualquer direção a posição de um objeto de janela. Números negativos indicam para cima e para a esquerda. |
—function SendMessage(var Msg:TWOLMessage):TWOLSmallInt; override; |
Envia uma mensagem para o Windows com execução imediata. Em outras GUIs não tem equivalente. |
—function PostMessage(Msg:TWOLCardinal; WParam:TWOLCardinal; LParam:TWOLCardinal):TWOLCardinal; override; |
Semelhante a anterior mas com execução posterior aos processamentos correntes. Não é imediata. |
—procedure ReleaseMouse; virtual; |
Usado para liberar o mouse quando ele é capturado por um objeto de janela. |
—procedure CaptureMouse; virtual; |
Usado para que um objeto de janela capture o cursor do mouse. Um objeto que tem o mouse capturado recebe
mensagens do mouse com exclusividade. |
—procedure Refresh; virtual; |
Usado para repintar o objeto de janela. |
—procedure HandleNeeded; virtual; |
Usado para criar um handle para o objeto de janela. Esse procedimento verifica se o objeto tem handle
diferente de zero. Caso não tenha, ele chama CreateWnd. |
—procedure Hide; virtual; |
Usado para esconder ou tornar invisível um objeto de janela. Um objeto de janela escondido não recebe mensagens. |
—procedure Show; virtual; |
Usado para mostrar ou tornar visível um objeto de janela. |
—procedure Redraw; virtual; |
Usado para redesenhar um objeto de janela e seus filhos. |
—procedure DrawDesignFocus; virtual; |
Usado em tempo de projeto para desenhar o retângulo de foco do objeto de janela que está sendo manipulado correntemente. |
—function ClientToScreen(Point:TWOLPoint):TWOLPoint; |
Usada para converter um ponto do objeto de janela em coordenadas de tela. |
—function ScreenToClient(Point:TWOLPoint):TWOLPoint; |
Usada para converter um ponto da tela em coordenadas do objeto de janela. |
—function PointInBounds(Point:TWOLPoint):Boolean; virtual; |
Usada para verificar se um ponto está contido na área do objeto de janela. |
—procedure BringToFront; |
Usado para trazer o objeto de janela para frente de todos os outros. |
—procedure SendToBack; |
Usado para enviar o objeto de janela para trás de todos os outros. |
—procedure OrderByTopLeft; |
Usado para ordenar a criação e tabulação dos objetos baseado nas suas posições. |
—function GetParentForm:TWOLForm; |
Usada para recuperar o formulário ou janela na qual está o objeto visual, mesmo não sendo seu dono direto. |
—function isUniqueName(const S:String):Boolean; |
Usada para verificar se o nome de um objeto visual é o único em uma janela. |
|
Eventos Públicos |
—OnHide :TWOLEvent |
Evento disparado quando o objeto de janela é escondido. |
—OnShow :TWOLEvent |
Evento disparado quando o objeto de janela é tornado visível. |
—OnEnter :TWOLEvent |
Evento disparado quando o objeto de janela recebe o foco do teclado. |
—OnExit :TWOLEvent |
Evento disparado quando o objeto de janela perde o foco do teclado. |
—OnResize :TWOLEvent |
Evento disparado quando o objeto de janela tem as dimensões modificadas. |
—OnKeyPress:TWOLKeyEvent |
Evento disparado quando o teclado é acionado para o objeto de janela com o foco. |
—OnCtlColor:TWOLMsgEvent |
Evento disparado quando um objeto de janela necessita ser pintado. Essa pintura difere da do Paint, já que apenas a cor pode ser alterada. |
—OnPaint :TWOLMsgEvent |
Evento disparado quando o objeto de janela necessita se pintado. Nesse caso pode-se desenhar qualquer coisa no objeto. |
—OnPaintBkG:TWOLMsgEvent |
Evento disparado quando o fundo do objeto de janela necessita ser desenhado. |
—OnPaintBrd:TWOLMsgEvent |
Evento disparado quando o bordo do objeto de janela necessita ser pintado. Nem toda GUI permite o bordo seja pintado. |