モジュール/クラスの追加

Delphi で空のクラス、モジュールを追加するには [ファイル] - [新規作成] で "ユニット" を選びます。
するとプロジェクトに空のユニットが追加されます。

■ 追加される内容
unit Unit2;

interface

implementation

end.

これに、VBのモジュールのように関数を追加してみましょう。
グレーの部分以外が追加部分です。

■ 関数の追加例
unit Unit2;

interface

uses
  Windows;

function HanToZen(const Source: string) : string;
function ZenToHan(const Source: string) : string;
function ZenKanaToZenHira(const Source: string) : string;
function ZenHiraToZenKana(const Source: string) : string;

implementation

//----------------------------------------------
//  LCMapString API
//----------------------------------------------
function  MapString(const Source: string; Flag: integer): string;
var
  Chr : array [0..255]  of  char;
begin
  Windows.LCMapString(
    GetUserDefaultLCID(),
    Flag,
    PChar(Source),
    Length(Source) + 1,
    chr,
    Sizeof(chr)
    );
  Result  :=  chr;
end;

//----------------------------------------------
//  半角を全角に変換
//----------------------------------------------
function HanToZen(const Source: string) : string;
begin
  Result  :=  MapString(Source, LCMAP_FULLWIDTH);
end;

//----------------------------------------------
//  全角を半角に変換
//----------------------------------------------
function ZenToHan(const Source: string) : string;
begin
  Result  :=  MapString(Source, LCMAP_HALFWIDTH);
end;

//----------------------------------------------
//  全角カタカナを全角ひらがなへ
//----------------------------------------------
function ZenKanaToZenHira(const Source: string) : string;
begin
  Result  :=  MapString(Source, LCMAP_HIRAGANA);
end;

//----------------------------------------------
//  全角ひらがなを全角カタカナへ
//----------------------------------------------
function ZenHiraToZenKana(const Source: string) : string;
begin
  Result  :=  MapString(Source, LCMAP_KATAKANA);
end;

end.

interface 部に宣言した関数は外部のユニットからも使用可能です。
この場合 4 つの関数が外部に公開されています。 interface 部に記述しない関数は外部からは使えません。上記の例では MapString 関数は外部からは使えません。

次にクラスの記述例です。

■ クラスの記述例
unit Unit2;

interface

uses
  Windows, Classes, Dialogs;

type
  TTestClass  = class(TObject)                  
  private
  public
    procedure ShowMsg;
  end;

implementation

procedure TTestClass.ShowMsg;
begin
  ShowMessage('Hello World');
end;

end.

上記のへなちょこクラスは見て分かると思いますがパブリックスコープに ShowMsgメソッドがあるだけのものです。VBと違い、Delphi ではひとつのファイルにいくつでもクラスを記述できます。Delphiのサンプルコンポーネントもクラスなのでそれを参考にするといろいろと勉強になります。