Dicas e Truques


a) Habilitar a CPU Window, ou seja, uma janela que me oriente os status da CPU ao se iniciar uma depuração.

b) Criar variáveis de um escopo semelhante ao Static no Clipper, ou seja, que após inicializada a mesma guarde o seu valor até necessitarmos dela novamente.

c) Teclas aceleradoras e abreviações que aumentam a velocidade de digitação do código Pascal.

d) Como Traduzir para o português todas as mensagens do Delphi, InstallShield e QuickReport fácil, fácil...

e) Visualizando com maior rapidez métodos e propriedades no IDE do Delphi.

f) Ordenando a TabOrder com facilidade.


a) Não sabemos o porque mas a Borland não habilita nem demonstra a existência da CPU Window, em seus manuais, acredito que seja por falta de teste no código, ou seja, aqui vai um aviso que podem ocorrer problemas ao se utilizar desta ferramenta no seu micro. Além do mais isso só será efetivamente usado por poucos programadores, que realmente sabem onde estão mexendo, aqueles que normalmente vão se utilizar do BASM(Borland Assembler), para escrever rotinas e necessitam depurar os registradores e pilhas da CPU.

- Para começar temos que sair do Delphi se o mesmo estiver sendo executado. Após isso vamos ao editor de registros Regedit.exe, que pode ser acionado a partir do menu executar do Win 95, localizemos o registro HKEY_CURRENT_USER, e vamos localizar na arvóre o valor da chave :

Software\Borland\Delphi\3.0\Debugging.

- Após acharmos estas chaves vamos clicar com o botão direito do mouse sobre a janela dos valores e pedir a opção adicionar valor de sequência. Digite a chave EnableCPU e depois ENTER. Logo após clique com o botão direito em cima desta chave criada e escolha o opção Modificar, na tela que surge, digite na linha Valor dos dados o valor 1. Ao abrimos o Delphi novamente vá ao menu View e veja que existe uma nova opção que é CPU Window, ao clicarmos nela aparece uma tela com a posição dos registradores, pilhas, memória etc... Se quiser visualizar uma sequência que demonstre isso clique aqui, ou execute direto do explorer o executável cpuwin.exe.

by F.C.A.


b) Outra informação que a Borland não divulga é a existência de constantes tipadas, ou seja constantes que possuem um tipo de dados definidos. O que normalmente acontece é que ao definirmos uma constante, não definimos que tipo este possui, ao darmos uma valor à mesma, o compilador já atribui à esta o tipo mais adequado. Mas e se nos forçarmos um tipo de constante, com o seu tipo indicado na declaração como no modelo abaixo :

Const
nVezes : Integer = 0;

- O que acontece neste caso é o seguinte. O compilador prepara um ponteiro de memória para aquela constante, mas toda vez que nos referimos à aquela constante, na realidade estamos nos referindo à uma posição na memória(fixa), portanto esta constante se comporta exatamente como uma variável, exceto pelo caso que o seu valor não se perde, mesmo em sendo uma variável (ou constante) de escopo local, se comportando exatamente como variáveis Static. O exemplo abaixo nos ajuda a entender um pouco melhor este caso.

Código Fonte: UNIT1.PAS


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
Const
     nVezes : Integer = 0; // Esta é a variável tipo Static
begin
     Inc(nVezes);
     Edit1.Text := IntToStr(nVezes);
end;

end.

- Todas as vezes que clicamos no botao o texto de Edti1 têm um número com o valor incrementado em uma unidade, note que declaramos a constante local ao método Button1Click, portanto caso ela se comporta-se como uma variável comum, todas as vezes que clicassemos, teríamos o valor zero em Edit1, porém o que temos é o incremento a cada clique do botão.

by F.C.A.


c) Existem códigos que podem ser digitados no editor do Delphi que juntamente com as teclas de atalho [CTRL+J] economizam tempo e digitação. Por exemplo : Experimente digitar if num trecho qualquer de código e tecle [CTRL+J], será mostrado uma tela semelhante à da figura I, onde à esquerda temos a declaração completa que desejamos, e a esquerda temos o código para a declaração. Ou seja se quisermos uma declaração if/then/else, basta digitarmos ifeb e após [CTRL+J] que automaticamente o código será gerado pelo Delphi.

Figura I

by F.C.A.


d) Esta dica para muita gente vai valer o dinheiro pago pelo CD. Se estiver com o Delphi aberto saia do mesmo e copie todos os arquivo localizados no diretório \tips\portug, e simplesmente copie-os para o diretório LIB do Delphi, que caso você não tenha instalado em outro local, está localizado em : \arquivos de programas\Borland\Delphi\LIB. São arquivos que traduzem todas as caixas de diálogo padrão, hints, excessões do Delphi, avisos do InstallShield(utilitário de instalação que vêm juntamente com o Delphi), além de traduzir os botões e hints da tela de preview do QuickReport!

by F.C.A.


e) O IDE do Delphi nos ajuda bastante ao digitarmos o código. Caso você digite o nome de um componente pertecente ao Form e logo após o ponto, após alguns segundos o Delphi lhe mostra um diálogo com todas as opções de propriedades e métodos daquele componente. A primeira dica. O Delphi vêm por padrão mostrar esta lista por ordemo de Escopo, o que convenhamos não é muito útil, clicando com o botão direito do mouse em cima do diálogo, surge um menu pop-up com duas opções, Sort by Scope e Sort By Name(Figura I), escolha a opção por nome e conforme você vai digitando as letras a caixa de diálogo vai procurando a o método ou propriedade que mais se assemelha ao que você procura.

A segunda dica diz respeito às teclas [CTRL+SPACE], ou seja, quando você quiser que a caixa de diálogo da figura I se abra mas não quiser esperar pelo IDE, simplesmente digite [CTRL+SPACE] e a caixa se abrirá.

by F.C.A.


f) Você acaba de incluir dezenas de campos do tipo TDBEdit no seu form de cadastro, e utiliza a técnica de trocar o Tab pelo Enter na mudança de campos, porém como os campos foram incluídos fora de ordem você precisa redigitar a TabOrder de cada componente para que ele seja percorrido na sequência correta. Isto não será mais necessário, basta selecionar todos os objetos que você deseja que fiquem ordenados, recortá-los(CTRL-X), e depois colá-los de volta(CTRL-C), automaticamente a TabOrder estará de acordo com sua posição no Form.

by F.C.A.

Hosted by www.Geocities.ws

1