Anterior Sumário Próximo OpenBASE! o Banco de Dados inteligente. Fale conosco!

Controle das janelas do ambiente

O "desktop", como seu nome indica, nada mais é do que uma área que representa o ambiente e as ferramentas de trabalho do usuário. Nela são colocados alguns objetos, tais como ícones, painéis, pastas e atalhos que permitem identificar, acessar e gerenciar os componentes do sistemas operacional, assim como disponibilizar os recursos para desenvolvimento dos aplicativos específicos de cada usuário.

As janelas constituem, basicamente, a maneira com a qual o usuário visualiza e interage com os procedimentos e as informações. Por isso, é extremamente importante que cada janela seja planejada, desenhada e implementada de maneira consistente.

As operações básicas com janelas incluem: ativar, desativar, abrir, fechar, mover, redimensionar, maximizar, minimizar, esconder, mostrar, rolar e particionar. As janelas fornecem acesso a diferentes tipos de informação e, de acordo com sua utilização, são classificadas em dois tipos: janela principal e janela secundária.

Uma janela principal envolve a interação com objetos através de atividades como visualização e edição. Adicionalmente, em cada janela principal, podem ser incluídas múltiplas janelas secundárias, de forma a permitir que o usuário especifique parâmetros e opções, ou seja, detalhes mais específicos em relação aos objetos e procedimentos incluídos na janela principal.

Janela principal

Uma janela principal consiste, usualmente, de uma moldura, que define sua extensão, um menu de controle, uma janela (ou barra) de status, barras de rolamento (quando necessário) e um título que identifica o que está sendo apresentado na janela.

Geralmente, cada janela principal requer um conjunto de janelas secundárias para complementar as atividades do usuário na janela principal. As janelas secundárias são similares às principais mas diferem em seu aspecto, comportamento e utilização. Exemplos de janelas secundárias são: Folhas de propriedades (property sheets), Caixas de diálogo (Dialog boxes), paletas (palette Windows), Caixas de mensagens (message boxes) e muitos outros.

Dimensionando a janela principal

A janela principal de um programa OpusWin possui, como dimensão inicial default, 24 linhas por 80 colunas. Estes valores podem ser modificados através de opções OpusWin, tais como $WINLINES=<num> e $WINCOLS<num>, especificadas no início do programa.

A opção $MAXIMIZE indica que a tela deve ser maximizada, sendo calculado automaticamente o número máximo de linhas e colunas, dependendo da resolução configurada pelo usuário.

As funções numéricas MAXLINES() e MAXCOLUMNS() retornam o número máximo de linhas e colunas na janela principal, dependendo da opção $MAXIMIZE e da resolução da tela.

Exemplo

$maximize

prog

? maxlines()                      && retorna 38 em resolução 800x600

? maxcolumns()                && retorna 100 em resolução 800x600

Ocultando a janela principal

A OpusWin utiliza as opções $NOSCREEN e $NOWINDOW para determinar que a janela principal do programa não será criada.

A opção $NOSCREEN permite criar programas Windows cuja janela principal não será mostrada. Neste caso, o programa será executado em background e terminará sem avisar.

A opção $NOWINDOW permite criar programas Windows sem janela principal. Neste caso, o programa será executado em background.

Exemplo

$noscreen

prog

database EXEMPLO 1 a 2

use PESSOA

locate

do while !eof()

    replace IDADE with IDADE+1

    change

    continue

enddo

Observações

Com a opção $NOSCREEN, o programa não poderá receber parâmetros na execução. A opção $NOWINDOW permite a passagem de parâmetros, para o programa.

Janela secundária

Uma janela secundária inclui, usualmente, uma borda e uma barra de título. O usuário pode mover a janela, arrastando sua barra de título. Porém, esta janela, por ser secundária, não possui botões de maximizar e minimizar (pois essas operações não se aplicam a janelas secundárias), nem possui barra ou janela de status. Um botão "Close" pode ser incluído para fechar ("destruir") a janela. O título da janela não inclui ícone, como vimos na janela primária. Veja na figura a seguir exemplos típicos de janelas secundárias.

Anterior Sumário Próximo OpenBASE! o Banco de Dados inteligente. Fale conosco!