16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"バージョン判断コンパイル"
この発言に対し以下のコメントが寄せられています
#00665 佐藤 充男 さん Pascalコンパイラバージョン判断
こんにちは、佐藤 充男です。
☆説明
コンポーネント作成時に複数のバージョンをサポートする場合のコード記述
例です。
☆補足
Delphi3.1、Delphi 4、C++Builder 3 でテスト。
[サンプルソース]
----------------------------------------------------------------------
{$IFDEF VER100} // Delphi 3
ShowMessage('Delphi 3.x');
{$ENDIF}
{$IFDEF VER110} // C++Builder3
ShowMessage('C++Builder 3');
{$ENDIF}
{$IFDEF VER120} // Delphi 4
ShowMessage('Delphi 4');
{$ENDIF}
----------------------------------------------------------------------
[実際の使用例]
----------------------------------------------------------------------
procedure TSaEdit.CreateParams( var Params: TCreateParams );
const
{$IFDEF VER100} // Delphi 3
Alignments: array[TAlignment] of Longint = (ES_LEFT, ES_RIGHT, ES_CENTER);
{$ENDIF}
{$IFDEF VER110} // C++Builder3
Alignments: array[TAlignment] of Longint = (ES_LEFT, ES_RIGHT, ES_CENTER);
{$ENDIF}
{$IFDEF VER120} // Delphi 4
Alignments: array[TAlignment] of Longword = (ES_LEFT, ES_RIGHT, ES_CENTER);
{$ENDIF}
begin
inherited CreateParams(Params);
Params.Style := (Params.Style or ES_MULTILINE or Alignments[FAlignment]) and
(not ( ES_AUTOVSCROLL or ES_AUTOHSCROLL ) );
end;
----------------------------------------------------------------------
#Delphi2、C++Builder1の条件がわからないので補足願います。
98/9/26(土) 02:33pm LDM03756 佐藤 充男
Original document by 佐藤 充男 氏 ID:(LDM03756)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|