Delphiプログラミング講座

  Programing all night          

 

ここではDelphiプログラミングのTipsを紹介します。

1.動的配列の宣言

     var  x,n: array of integer;   //プログラムの先頭で宣言

     SetLength(x,1);               //初期化 x[0] 本文中で使う

     n := Length(x);

          SetLength(x, n+100);         //増やす x[0]〜x[100]

2.イメージ画像をキャンバスに描く

     Bmap: Tbitmap;
     DispRect: TRect;

     DispRect.Left := 100;
     DispRect.Top := 100: ;
     DispRect.Right := 200;     
     DispRect.Bottom := 200;

          Bmap := TBitmap.Create;

     Bmap.LoadFromFile(Fname);     
                                  ファイル名

          Form1.Canvas.Stretch(DispRect, Bmap);  

3.キャンバスをイメージに保存する

          DC: HDC;

          DC := GetDC(Form1.Handle);

          Image1.Picture.Bitmap.Width := Form1.Width;
          Image1.Picture.Bitmap.Height := Form1.Height;

          BitBlt(Image1.Canvas.Handle, 0, 0, Form1.Width,Form1.Height, DC, 0, 0, SRCCOPY);

          Release(Form1.Handle, DC);                      

4.WMAファイルのタグ情報を読み出す

    Windowsに付属しているWMP.DLLを利用する;

         uses  ComObj;

         var  Sname,Dname,Title,Singer: string;
                 pobj,pdir,pname: variant;

    Fname := 'C:\Music\ABC.wma';            //たとえば曲のファイル名
    Sname := ExtractFileName(Fname);     //ファイル名
    Dname := ExtractFilePath(Fname);       //パス名

    pobj := CreateOleObject('Shell.Application');
    pdir := pobj.NameSpace((Dname));                   //なぜか二重括弧
    pname := pdir.Items.Item((Sname));     

         Title := pname.ExtededProperty('DocTitle');     //タイトル
         Singer := pname.ExtededProperty('Artist');      //アーティスト

5.ポップアップメニューの使い方

    PopupMenuコンポーネントをフォームに貼り付ける。オブジェクトインスペクターからPopupMenuのプロパティItemsをクリックして、エディタを起動しメニューをCaptionから入力する。各々の処理は、メニューをダブルクリックするとコードが表示されるので、そこにプログラムを書く。

       FormCreateに

       Form1.PopupMenu := PopupMenu1;

       FormMouseDownに

       if Button = mbRight then PopupMenu1.popup(x,y);