MFC   VC++   Visual Studio   Visual Studio   プログラミング

CMFCLinkCtrlの作成

 HTMLのハイパーリンクと同じような機能を持つ「CMFCLinkCtrl」の使い方について説明していきます。
 このクラスは、ボタンコントロールの派生クラスなので、ボタンコントロールを改良して使います。

 まず、通常のボタンコントロールをリソースエディタで配置し、メンバ変数を追加するときに変数の種類を「CButton」から「CMFCLinkCtrl」に変更します。
 このとき、ボタンコントロールのキャプションがハイパーテキストになります。

 次に、「OnInitDialog」などで以下のように設定します。
    // m_link_ctrlはCMFCLinkCtrlのメンバ変数
    m_link_ctrl.SetURL(_T("http://thunor.sblo.jp/"));    // このブログを開きます
    m_link_ctrl.SetTooltip(_T("MFC小技メモ集を開きます")); // オンマウスでポップアップ表示
    m_link_ctrl.SizeToContent();    // サイズ調整
 少し説明すると、「SetTooltip」でオンマウス時のポップアップ表示の文字列を設定し、「SizeToContent」でキャプションの長さに合わせてコントロールのサイズを変更します。

 この他に、HTML以外のものを開きたい場合は、「SetURLPrefix」を使ってプロトコルを設定します。
 例えば、メール送信のためのメーラーを起動させたい場合は、
    m_link_ctrl.SetURLPrefix(_T("mailto:"));
    m_link_ctrl.SetURL(_T("aaa@bbb.co.jp"));
とすることで、リンククリック時に規定のメーラーが起動され、送信先に設定アドレス(ここでは「aaa@bbb.co.jp」)が入った状態になります。
 「SetURLPrefix」を設定しないと「http:」接続になります。
ランキングへ     posted by 遠雷 | Comment(0) | コントロール
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。