- PR -

C#でロールオーバー

1
投稿者投稿内容
和也さん
ベテラン
会議室デビュー日: 2006/02/09
投稿数: 78
投稿日時: 2006-05-05 17:35
C#でコマンドボタンにロールオーバーを設定しようとしているのですが方法が分かりません

VB.NETでは
ボタンのイベントで
mouse_move・mouse_leaveにそれぞれ色を設定していました。

C#ではどのように行うのでしょうか?
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2006-05-05 17:40
C# も VB.NET もなんら変わりありませんが。
どこまでできましたか?
ところで、WinForm の話なのか WebForm の話なのか、何の話か分かりません。(mouse_move で大体分かりますが)最初にキチっと伝えておくと、正確で素早い回答が付くと思いますよ。
_________________
囚人のジレンマな日々
和也さん
ベテラン
会議室デビュー日: 2006/02/09
投稿数: 78
投稿日時: 2006-05-05 17:49
ご指摘ありがとうございます。

WindowsFormです

ソースは
----------------------------------------------------------------------------
this.ボタン名.MouseMove += new System.EventHandler(this.ボタン名_MouseMove);

private void ボタン名_MouseMove(object sender, System.EventArgs e)
{
this.ボタン名.BackColor=ColorTranslator.FromHtml(16進カラーコード);
}
----------------------------------------------------------------------------
です
mouse_leaveは正常に動作するのですが、
Moveに直すと
-------------------------------------------------------
エラー 1 型 'System.EventHandler' を型 'System.Windows.Forms.MouseEventHandler' に暗黙的に変換できません。 D:\C#NET_WorkSpace\○○\○○\フォーム名.cs
86 68 プロジェクト名
-------------------------------------------------------
とのエラーが表示されます
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2006-05-05 17:57
エラーメッセージの通りです。
MouseMove の型は何だと思いますか?
MouseLeave の型は何だと思いますか?

引用:

mouse_leaveは正常に動作するのですが、
Moveに直すと


型が違うので単純に置換では無理ですね。
_________________
囚人のジレンマな日々
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-05-05 18:26
囚人さんの仰るように、C# と VB ではこのあたりは何ら変わりありません。

VB の場合 AddHandler にあたる部分が今回のそれですが、型を指定する必要はなく、
シグネチャを指定するだけ良かったので、混乱されているのでしょうか?

自己解決のためには、まずはリファレンスを見てください。
見るべき場所は、イベント ハンドラの型だけです。
そんなに面倒ではないので、是非見てください。

おそらくは、型の意識があるかないかだけだと思います。
意識さえすれば、自己解決できる問題だったと思います。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

スキルアップ/キャリアアップ(JOB@IT)