Active News - Nº 37  - www.activedelphi.com.br 

             Terça-feira, 23 de abril de 2002

 

          Notícia da Edição:

          1- Executando procedure/método genéricamente.

 

     Essa dica, permite executar uma procedure existente em vários forms genéricamente.

 

  // declare um tipo para executar a procedure

  type

    TProc = procedure (Obj : Tobject; s: String);

 

  procedure TForm1.Mensagem (s: String);

  begin

    showmessage ('Mensagem no' + s );

  end;

 

  procedure TForm1.Button1Click (Sender : TObject);

  var

    Theproc : TProc;

    i : Integer;

  begin

    // pesquisa a procedure

    For i := 0 to Screen.FormCount - 1 do

    begin

      TheProc := Screen.Forms [i].MethodAddress ('Mensagem');

      if assigned (theproc) then

        theproc (Screen.Forms[i], Screen.Forms[i].Name);    

    end;

  end;

 

     Seja um colaborador do ActiveDelphi, ajude-nos a manter este serviço gratuito. Saiba mais...

-

          2- Alterando as imagens do DBNavigator.

 

  Basta abrir o arquivo "dbctrls.res" no Image Editor do Delphi e fazer as alterações. 

 

          Suporte em Delphi. cadastre-se já 

          Este serviço tem por finalidade oferecer aos associados um suporte técnico na linguagem de programação Delphi, nas versões 1, 2, 3, 4 e 5 Standard, Professional e Client/Server.   

          Atualmente, contamos com uma equipe de profissionais qualificados e prontos pra lhe atender e ajudá-lo da melhor forma possível.  

          Nosso atendimento é feito através de e-mail e formulário web, de segunda à sexta das 08:00h às 18:00h.

-
          3- Criando e excluindo TFields em Run-Time.

 

  procedure TForm1.btnCriaFieldClick(Sender: TObject);
  var T: TStringField;
  begin
    if qryCliente.Active then qryCliente.Close;
    T := TStringField.Create(Self);
    T.fieldName := 'cli_Nome';
    T.FieldKind := fkData;
    T.DisplayLabel := 'Nome do Cliente';
    T.Visible := True;
    T.Name := qryCliente.Name + T.FieldName;
    T.Index := qryCliente.FieldCount;
    T.DataSet := qryCliente;
    qryCliente.FieldDefs.UpDate;
    qryCliente.Open;
  end;

  procedure TForm1.btnApagaFieldClick(Sender: TObject);
  var TC: TComponent;
  begin
    TC := FindComponent('qryClientecli_Nome');
    if not (TC = nil) then
    begin
      qryCliente.Close;
      TC.Free;
      qryCliente.Open;
    end;
  end;
  

 

          Várias Apostilaswww.activedelphi.com.br/apostilas.htm
          4- Desligando o computador via delphi.

 

  ExitWindowsEx (EWX_SHUTDOWN, 0);

 

            Visite nosso Fórum de discussões sobre Delphi, é gratuito e não precisa se cadastrar. Clique Aqui
-
          5- Transformando ícone (*.ico) em bitmap (*.bmp).


  var
    Pic : TPicture;
    TI : TIcon;
  begin
    TI := TIcon.Create;
    TI.Handle := ExtractIcon(HInstance, FileNameBuf, 0);
    Pic := TPicture.Create;
    Pic.Icon := TI;
    Image1.Picture := Pic; {TImage}
    BitBtn1.Glyph := TBitmap.Create;
    with BitBtn1.Glyph do
    begin

      width := TI.Width;
      Height := TI.Height;
      Canvas.Draw(0, 0, Pic.Icon);
    end;
  end;

 

          Não deixe de enviar sua dica de Programação Delphi para nós a publicarmos no ActiveNews, a equipe do ActiveDelphi e   todos os assinantes ficarão agradecidos com a sua contribuição.  

-
          6- Desabilitando um RadioButton em um RadioGroup.

 

  TRadioButton(RadioGroup1.Controls[1]).Enabled := False; 

 

          Suporte em Delphi. cadastre-se já 

          Este serviço tem por finalidade oferecer aos associados um suporte técnico na linguagem de programação Delphi, nas versões 1, 2, 3, 4 e 5 Standard, Professional e Client/Server.   

          Atualmente, contamos com uma equipe de profissionais qualificados e prontos pra lhe atender e ajudá-lo da melhor forma possível.  

          Nosso atendimento é feito através de e-mail e formulário web, de segunda à sexta das 08:00h às 18:00h.

-
          7- Obtendo o próximo dia útil.

 

  Function ProximoDiaUtil (dData : TDateTime) : TDateTime;
  begin
    if DayOfWeek(dData) = 7 then
      dData := dData + 2
    else
      if DayOfWeek(dData) = 1 then
    dData := dData + 1;
    ProximoDiaUtil := dData;
  end;

 

-

          Pensamento:

          Se você quer transformar o mundo, experimente primeiro promover o seu aperfeiçoamento pessoal e realizar inovações no seu próprio interior. Estas atitudes se refletirão em mudanças positivas no seu ambiente familiar. Deste ponto em diante, as mudanças se expandirão em proporções cada vez maiores."

-

          Repasse este News para seus amigo(as)...

 

          Até a próxima semana !

 

          EQUIPE  ACTIVEDELPHI

          www.activedelphi.com.br

          info@activedelphi.com.br

 

 Este é um serviço gratuito oferecido pelo site www.activedelphi.com.br

 Para cancelar sua assinatura, basta responder esse e-mail, colocando no campo assunto "Cancelar".