更新 : 2007 年 11 月
Visual Basic 6.0 の CommonDialog コントロールは、Visual Basic 2008 では特別ないくつかのコンポーネントに置き換えられています。
概念の違い
Visual Basic 6.0 では、CommonDialog ActiveX コントロールを使って、さまざまなコモン ダイアログ ([開く]、[上書き保存]、[カラー]、[フォント]、[印刷]、および [ヘルプ]) をアプリケーションに表示します。
Visual Basic 2008 では、CommonDialog コントロールは、ダイアログ表示用の個別のコンポーネント (OpenFileDialog、SaveFileDialog、ColorDialog、FontDialog、および PrintDialog) に置き換えられています。
メモ : |
|---|
Visual Basic 2008 には、ヘルプ ダイアログ表示に直接相当するものはありません。CommonDialog コントロールは、Windows ヘルプだけをサポートしていました。Visual Basic 2008 は、HTML ヘルプだけをサポートします。Visual Basic 2008 では、HelpProvider コンポーネントを使ってアプリケーションのヘルプを表示します。詳細については、「ヘルプ サポート (Visual Basic 6.0 ユーザー向け)」を参照してください。 |
CommonDialog コントロールを扱うコードの変更
次の例では、CommonDialog コントロールの一般的な使い方における Visual Basic 6.0 と Visual Basic 2008 でのコーディング テクニックの違いを示します。
[ファイルを開く] ダイアログ ボックスを表示するコードの変更
次のコード例は、[Program Files] ディレクトリに初期化された [ファイルを開く] ダイアログ ボックスを表示する方法を示しています。
' Visual Basic 6.0
' Uses a CommonDialog control.
CommonDialog1.InitDir = "C:\Program Files"
CommonDialog1.ShowOpen
' Visual Basic
' Uses a OpenFileDialog component.
OpenFileDialog1.InitialDirectory = "C:\Program Files"
OpenFileDialog1.ShowDialog()
[名前を付けて保存] ダイアログ ボックスを表示するコードの変更
次のコード例は、[名前を付けて保存] ダイアログ ボックスを表示し、ファイルをアプリケーションのフォルダに保存する方法を示しています。
' Visual Basic 6.0
' Uses a CommonDialog control.
CommonDialog1.InitDir = App.Path
CommonDialog1.ShowSave
' Visual Basic
' Uses a SaveFileDialog component.
SaveFileDialog1.InitialDirectory = My.Application.Info.DirectoryPath
SaveFileDialog1.ShowDialog()
[印刷] ダイアログ ボックスを表示するコードの変更
次のコード例は、[印刷] ダイアログ ボックスを表示し、アプリケーションのフォルダ内のファイルを印刷する方法を示しています。
' Visual Basic 6.0
' Uses a CommonDialog control.
CommonDialog1.FileName = App.Path & "MyFile.txt"
CommonDialog1.ShowPrinter
' Visual Basic
' Uses PrintDocument and PrintDialog components.
PrintDocument1.DocumentName = My.Application.Info.DirectoryPath _
& "MyFile.txt"
PrintDialog1.Document = PrintDocument1
PrintDialog1.ShowDialog()
ヘルプを表示するコードの変更
次のコード例は、アプリケーションのヘルプ ファイルを表示し、目次を開く方法を示しています。
' Visual Basic 6.0
' Uses a CommonDialog control.
CommonDialog1.HelpFile = "C:\Windows\Help\calc.hlp"
CommonDialog1.HelpCommand = cdlHelpContents
CommonDialog1.ShowHelp
' Visual Basic
' Uses the Help.ShowHelp method.
Help.ShowHelp(Me, "file://C:\Windows\Help\calc.chm", _
HelpNavigator.TableOfContents)
CommonDialog コントロールのプロパティとメソッドの対応関係
次の表は、Visual Basic 6.0 のプロパティおよびメソッドと、対応する Visual Basic 2008 のプロパティおよびメソッドの一覧です。同じ名前で同じ動作を持つプロパティおよびメソッドは、一覧に含まれていません。必要に応じて、プロパティまたはメソッドの下に定数が示されています。特に明記されていない限り、すべての Visual Basic 2008 列挙型は System.Windows.Forms 名前空間に対応します。
必要に応じて、動作の違いを説明するトピックへのリンクが示されています。Visual Basic 2008 に直接対応するものがない場合は、代わりの項目について説明したトピックへのリンクを示します。
プロパティ
Visual Basic 6.0 |
Visual Basic 2008で対応するもの |
|---|---|
Action |
新規に実装されました。Visual Basic 6.0 では、表示するダイアログは Action プロパティによって決定されます。Visual Basic 2008 では、ダイアログごとに異なるコンポーネントを使用します。 |
CancelError |
|
Copies |
|
DialogTitle |
Title (OpenFileDialog および SaveFileDialog コンポーネントのみ) ほかのコンポーネントのために新規に実装されました。Windows の標準タイトル (Color、Font、および Print) が表示され、これらをオーバーライドすることはできません。 |
FileName |
|
FileTitle |
新規に実装されました。Visual Basic 6.0 の FileTitle プロパティは、FileName をパスなしで返します。FileNames プロパティを解析することにより、パスなしの名前を取得できます。 |
Flags |
Visual Basic 6.0 の Flags プロパティには、各種のコモン ダイアログにさまざまな属性を設定するための定数が用意されています。ダイアログ コンポーネントでは、定数ではなくプロパティを使って属性を設定します。 |
Font FontBold FontItalic FontName FontSize FontStrikethrough FontUnderline |
メモ :
Visual Basic 2008 では、フォントは別の方法で処理されます。詳細については、「フォント処理 (Visual Basic 6.0 ユーザー向け)」を参照してください。
|
FromPage |
|
hDC |
新規に実装されました。詳細については、「グラフィックス (Visual Basic 6.0 ユーザー向け)」を参照してください。 |
HelpCommand |
|
HelpFile |
|
HelpKey |
ShowHelp メソッドの parameter パラメータ。 |
Index |
新規に実装されました。詳細については、「コントロール配列 (Visual Basic 6.0 ユーザー向け)」を参照してください。 |
InitDir |
|
Left |
メモ :
Visual Basic 2008 では、座標は別の方法で処理されます。詳細については、「座標系 (Visual Basic 6.0 ユーザー向け)」を参照してください。
|
Max |
MaxSize (FontDialog コンポーネント) MaximumPage (PrintDialog コンポーネント) |
Min |
MinSize (FontDialog コンポーネント) MinimumPage (PrintDialog コンポーネント) |
MaxFileSize |
新規に実装されました。この Visual Basic 6.0 のプロパティは、非常に長いファイル名にメモリを割り当てます。マネージ コードでは、この機能は不要です。 |
Orientation |
|
Parent |
FindForm メソッド |
PrinterDefault |
新規に実装されました。この Visual Basic 6.0 のプロパティは、hDC プロパティと組み合わせて、グラフィック デバイス インターフェイス メソッドを使って印刷を行うために使用します。この機能は、サポートされなくなりました。 |
Top |
P:System.Windows.Forms.Control.Top メモ :
Visual Basic 2008 では、座標は別の方法で処理されます。詳細については、「座標系 (Visual Basic 6.0 ユーザー向け)」を参照してください。
|
ToPage |
メソッド
Visual Basic 6.0 |
Visual Basic 2005 で同等のもの |
|---|---|
AboutBox |
新規に実装されました。AboutBox プロパティは、CommonDialog コントロールの [バージョン情報] ボックスを表示しました。これは、Microsoft 向けにサード パーティによって作成されました。 |
ShowColor |
ShowDialog (ColorDialog コンポーネント) |
ShowFont |
ShowDialog (FontDialog コンポーネント) |
ShowHelp |
|
ShowOpen |
ShowDialog (OpenFileDialog コンポーネント) |
ShowPrinter |
ShowDialog (PrintDialog コンポーネント) |
ShowSave |
ShowDialog (SaveFileDialog コンポーネント) |
アップグレード メモ
アプリケーションを Visual Basic 6.0 から Visual Basic 2008 にアップグレードすると、CommonDialog コントロールは、対応するダイアログ コンポーネント (OpenFileDialog、SaveFileDialog、ColorDialog、FontDialog、または PrintDialog) にアップグレードされます。
Visual Basic 2008 には、Help ダイアログの表示に直接相当するものはありません。CommonDialog コントロールが Help ダイアログとして使用されている場合、そのコントロールはアップグレードされず、警告が発行されます。詳細については、「ヘルプ サポート (Visual Basic 6.0 ユーザー向け)」を参照してください。
1 つの CommonDialog コントロールが、複数の種類のダイアログを表示するために使用されている場合があります。この場合、コントロールは OpenFileDialog コンポーネントにアップグレードされ、警告が発行されます。それ以外のダイアログ コンポーネントを手動で追加する必要があります。
また、CommonDialog コントロールが変数として使用されている場合は、アップグレード後に、特定のダイアログ コンポーネントを参照するように変更する必要があります。
参照
参照
FontDialog コンポーネントの概要 (Windows フォーム)
HelpProvider コンポーネントの概要 (Windows フォーム)
その他の技術情報
ColorDialog コンポーネント (Windows フォーム)
OpenFileDialog コンポーネント (Windows フォーム)
SaveFileDialog コンポーネント (Windows フォーム)
メモ :