Delphi Programming / Object Pascal
       
                [掲載 2002年01月16日] [更新 2011年08月01日] Excel出力コンポーネント | 
             
          
         
        
        
          
            
              Excel 出力コンポーネント 
              イベント | 
             
            
              |  動作確認等  | 
               Windows 7 U64(SP1) + Delphi XE(UP1) Pro | 
             
          
         
         
         
        
         
         
         
         
         
        
         
         
        
OnBeforePutValue(Sender,
                 iFieldNo,
                 FieldName,
                 FieldTyp,
                 iCol,
                 iRow,
                 var IsAllow)
 
         
        
          
            
               このイベントの後に,各セルへデータ型に応じた値をセルへ出力します.ただし,処理可能なフィールドのデータ型以外は文字列として出力しますが,このイベントを定義していると (処理コードの有無に関係なく),その文字列を出力しません. 
                本コンポが自動処理する以外のデータ型は,このイベントか,OnAfterPutValue イベント内で処理してください.  | 
             
          
         
         
        
          
            
              |  引数  | 
               型  | 
               説明  | 
             
            
              | Sender | 
              TObject | 
               コンポーネント自身  | 
             
            
              | iFieldNo | 
              Integer | 
               データセットのフィールド番号 (最初の番号は 0)  | 
             
            
              | FieldName | 
              String | 
               データセットのフィールド名  | 
             
            
              | FieldTyp | 
              TFieldType | 
              データセットのフィールドのデータ型 | 
             
            
              | iCol | 
              Inteter | 
               出力先のセルの列番号  | 
             
            
              | iRow | 
              Integer | 
               出力先のセルの行番号  | 
             
            
              | var IsAllow | 
              Boolean | 
               この値が True なら,コンポ内でデータ型に応じた処理を実行 
                False の場合は,このイベントか,OnAfterPutValue イベント内の処理だけが実行される 
                デフォルトは True  | 
             
          
         
         
        
         
         
         
        
         
         
        
OnAfterPutValue(Sender,
                iFieldNo,
                FieldName,
                FieldTyp,
                iCol,
                iRow)
 
         
        
          
            
               このイベント内で追加の出力コードを書くことができます. 
                本コンポが自動処理する以外のデータ型は,OnBeforePutValue イベントか,このイベント内で処理してください.  | 
             
          
         
         
        
          
            
              |  引数  | 
               型  | 
               説明  | 
             
            
              | Sender | 
              TObject | 
               コンポーネント自身  | 
             
            
              | iFieldNo | 
              Integer | 
               データセットのフィールド番号 (最初の番号は 0)  | 
             
            
              | FieldName | 
              String | 
               データセットのフィールド名  | 
             
            
              | FieldTyp | 
              TFieldType | 
              データセットのフィールドのデータ型  | 
             
            
              | iCol | 
              Inteter | 
               出力先のセルの列番号  | 
             
            
              | iRow | 
              Integer | 
               出力先のセルの行番号  | 
             
          
         
         
        
         
         
         
        
         
         
        
         
        
          
            
              |  このイベントが発生した時点で Excel への出力が終了しています.追加の出力を行いたい場合に使用します.Excel
                Creater の各プロパティ,メソッド等,またはメソッドのページで説明しているメソッドを使用して下さい.Excel
                Creater の関数を使用する場合は uses に XlsCrt3 が必要です.  | 
             
          
         
         
        
          
            
              |  引数  | 
               型  | 
               説明  | 
             
            
              | Sender | 
              TObject | 
               コンポーネント自身  | 
             
          
         
         
         
        
        
          
            
              リスト1 
                セル D1 に 'テスト' という文字列を,垂直位置,水平位置共に中央揃えで出力 
                文字列には,AnsiString 型を使用することに注意 | 
             
          
         
//=============================================================================
//  OnBeforeEndイベントで追加の出力
//  Excel CreateのAPI関数を使用するので,usesにXlsCrt3が必要
//=============================================================================
procedure TForm1.plXLSOut1BeforeEnd(Sender: TObject);
var
  LText : AnsiString;
begin
  LText := 'テスト';
  XlsCrt3.XlsPutStr     (PAnsiChar(LText), Cell('D1', 0, 0));
  XlsCrt3.XlsPutPosVert (pvCenter, Cell('D1', 0, 0));
  XlsCrt3.XlsPutPosHorz (phCenter, Cell('D1', 0, 0));
end;
 
         
         
         
         
        
         
         
         
        
  |