Referencia de Metodos A-Z
Esta pagina documenta os metodos mais comumente usados nos controles do HarbourBuilder. Metodos sao
funcoes chamadas em objetos de controle para executar acoes, consultar estado ou acionar comportamento. Eles
complementam atribuicoes de propriedade e manipuladores de eventos no modelo de programacao HarbourBuilder.
Metodos vs. Propriedades
Use propriedades para ler ou definir o estado de um controle (ex: oBtn:nWidth := 200).
Use metodos para acionar acoes (ex: oBtn:Show()) ou consultar valores computados
que nao sao armazenados como propriedades simples. No camada OOP do HarbourBuilder, metodos sao invocados
com a sintaxe :metodo() em qualquer referencia de objeto.
Construcao e Destruicao
| Metodo | Parametros | Retorna | Descricao | Disponivel Para |
New() |
oParent |
Objeto de controle |
Cria uma nova instancia de controle dentro do pai especificado. Este e o metodo construtor usado pelo preprocessador xBase para expandir comandos DEFINE e @. Geralmente chamado implicitamente pelo gerador de codigo. |
Todos os controles |
Create() |
nenhum |
Self (o controle) |
Realiza o controle na plataforma nativa chamando a API do backend (CreateWindowEx, NSView alloc, gtk_widget_new). Chamado automaticamente durante a ativacao do formulario. |
Todos os controles visuais |
Release() |
nenhum |
nil |
Destroi o controle e libera seus recursos nativos. No backend, isso chama DestroyWindow, release ou gtk_widget_destroy. Apos Release(), a referencia do objeto se torna invalida. |
Todos os controles |
Close() |
nenhum |
nil |
Fecha o formulario. Aciona OnCloseQuery (que pode cancelar o fechamento), depois OnClose, depois OnDestroy. Para controles que nao sao formularios, este metodo nao esta disponivel. |
Form |
Visibilidade e Foco
| Metodo | Parametros | Retorna | Descricao | Disponivel Para |
Show() |
nenhum |
nil |
Torna o controle visivel. Para formularios, isso tambem ativa e exibe o formulario na tela. Aciona o evento OnShow. |
Todos os controles visuais |
Hide() |
nenhum |
nil |
Oculta o controle sem destrui-lo. O controle ainda existe e pode ser exibido novamente. Aciona o evento OnHide em formularios. |
Todos os controles visuais |
SetFocus() |
nenhum |
nil |
Da foco de entrada ao controle. O controle deve estar visivel, habilitado e com lTabStop = .T. Aciona o evento OnEnter. |
Todos os controles focaveis |
Metodos de Valor
| Metodo | Parametros | Retorna | Descricao | Disponivel Para |
GetValue() |
nenhum |
Valor atual |
Retorna o valor atual do controle. Para Edit/Memo, retorna a string de texto. Para CheckBox, retorna .T./.F. Para ListBox/ComboBox, retorna o item selecionado. |
Edit, Memo, MaskEdit, CheckBox, Radio, ListBox, ComboBox, TrackBar, UpDown, LabeledEdit |
SetValue( xValue ) |
xValue (qualquer) |
nil |
Define o valor do controle. Para Edit/Memo, define o texto. Para CheckBox, define o estado de marcacao. Aciona o evento OnChange. |
Edit, Memo, MaskEdit, CheckBox, Radio, ListBox, ComboBox, TrackBar, UpDown, LabeledEdit |
SetText( cText ) |
cText (string) |
nil |
Define o texto exibido do controle. Equivalente a SetValue() para controles de texto, mas tambem funciona para Label, StaticText, legenda de Botao, etc. Nao aciona OnChange. |
Label, StaticText, Button, Edit, Memo, LabeledEdit, StatusBar, GroupBox |
GetText() |
nenhum |
String |
Retorna o texto exibido. Para Edit/Memo, este e o conteudo de texto. Para Label/StaticText, a legenda. Para Button, o prompt. |
Label, StaticText, Button, Edit, Memo, LabeledEdit |
Metodos de Posicao e Tamanho
| Metodo | Parametros | Retorna | Descricao | Disponivel Para |
SetBounds( nLeft, nTop, nWidth, nHeight ) |
Quatro numeros |
nil |
Define posicao e tamanho do controle em uma unica chamada. Mais eficiente que definir cada propriedade separadamente pois aciona apenas um redimensionamento/redesenho nativo. |
Todos os controles visuais |
SetPosition( nLeft, nTop ) |
Dois numeros |
nil |
Define apenas a posicao (esquerda, topo) sem alterar tamanho. Alias: MoveTo(). |
Todos os controles visuais |
SetSize( nWidth, nHeight ) |
Dois numeros |
nil |
Define apenas o tamanho (largura, altura) sem alterar posicao. |
Todos os controles visuais |
GetSize() |
nenhum |
Array { nWidth, nHeight } |
Retorna a largura e altura atuais como um array de dois elementos. |
Todos os controles visuais |
GetPosition() |
nenhum |
Array { nLeft, nTop } |
Retorna esquerda e topo atuais como um array de dois elementos. |
Todos os controles visuais |
Metodos de Fonte
| Metodo | Parametros | Retorna | Descricao | Disponivel Para |
SetFont( cName, nSize, [lBold], [lItalic], [lUnderline] ) |
Nome da fonte, tamanho, flags de estilo opcionais |
nil |
Define a fonte do controle em uma unica chamada. Parametros de estilo sao opcionais e padrao para .F. Este e um metodo de conveniencia que define cFontName, nFontSize, lFontBold, etc. de uma vez. |
Todos os controles com texto |
GetFont() |
nenhum |
Objeto de fonte (ou array) |
Retorna o descritor de fonte atual. O tipo de retorno depende do backend mas tipicamente contem nome da fonte, tamanho e informacao de estilo. |
Todos os controles com texto |
Metodos de Exibicao e Atualizacao
| Metodo | Parametros | Retorna | Descricao | Disponivel Para |
Refresh() |
nenhum |
nil |
Forca um redesenho imediato do controle. Isso invalida a area de exibicao do controle e aciona o evento OnPaint. Use quando alterou propriedades que afetam a aparencia e precisa de uma atualizacao visual imediata. |
Todos os controles visuais |
Update() |
nenhum |
nil |
Processa todas as mensagens de pinturas pendentes imediatamente. Diferente de Refresh() que forca uma repaint, Update() apenas repinta areas que ja estao marcadas como necessitando redesenho. |
Todos os controles visuais |
Invalidate() |
nenhum |
nil |
Marca a area inteira do controle como necessitando repaint, mas nao forca um redesenho imediato. A pintura acontece durante o proximo ciclo de pintura. Mais eficiente que Refresh() quando voce planeja fazer multiplas alteracoes antes da atualizacao. |
Todos os controles visuais |
Tabela Resumo Completa de Metodos
| Metodo | Retorna | Categoria | Controles Principais |
New( oParent ) | Objeto de controle | Construcao | Todos os controles |
Create() | Self | Construcao | Todos os controles visuais |
Release() | nil | Destruição | Todos os controles |
Close() | nil | Ciclo de Vida | Form |
Show() | nil | Visibilidade | Todos os controles visuais |
Hide() | nil | Visibilidade | Todos os controles visuais |
SetText( cText ) | nil | Valor | Label, Edit, Button, Memo, StatusBar |
GetText() | String | Valor | Label, Edit, Button, Memo |
GetValue() | Qualquer | Valor | Edit, Memo, CheckBox, ListBox, ComboBox |
SetValue( xVal ) | nil | Valor | Edit, Memo, CheckBox, ListBox, ComboBox |
SetBounds() | nil | Posicao | Todos os controles visuais |
SetPosition() | nil | Posicao | Todos os controles visuais |
SetSize() | nil | Posicao | Todos os controles visuais |
GetSize() | Array | Posicao | Todos os controles visuais |
GetPosition() | Array | Posicao | Todos os controles visuais |
SetFont() | nil | Fonte | Todos os controles com texto |
GetFont() | Objeto de fonte | Fonte | Todos os controles com texto |
Refresh() | nil | Exibicao | Todos os controles visuais |
Update() | nil | Exibicao | Todos os controles visuais |
Invalidate() | nil | Exibicao | Todos os controles visuais |
SetFocus() | nil | Foco | Todos os controles focaveis |
Encadeamento de metodos
Alguns metodos retornam self, permitindo um estilo fluente:
oBtn:New( oForm ):SetBounds( 50, 30, 120, 32 ):SetText( "OK" ):Show().
No entanto, a abordagem tradicional de definir propriedades individualmente e mais legivel e
e o estilo usado pelo gerador de codigo HarbourBuilder.