|
> ホームページでリンクにカーソルを移動させると「矢印」から「指」に変わるように、
> VisualCのコモンコントロールで作成したボタンの上に移動させたら、
> カーソルを「指」に変更させたいです。
> 自前で用意した画像とかではなく、システムにあるカーソルでいいんですが、
> どうやればこのように出来るのでしょうか?
CButton から派生させた CButton1 クラスを作り、そこに次のような
WM_SETCURSOR のハンドラーを追加します。
BOOL CButton1::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
if (nHitTest != HTCLIENT)
return CButton::OnSetCursor(pWnd, nHitTest, message);
::SetCursor(AfxGetApp()->LoadStandardCursor(IDC_WAIT));
return TRUE;
}
このボタンを持っているダイアログかフォームビューウィンドウのクラスに
CButton1 m_button1;
を追加すれば、ボタンの上にカーソルを持ってくると、
砂時計になるでしょう。自分で「指カーソル」 IDC_CURSOR1 を作ったら、
::SetCursor(AfxGetApp()->LoadCursor(IDC_CURSOR1));
> あ、あと、コモンコントロールでダイアログボックスに貼り付けたピクチャーの
> 「可視」をON,OFFにする関数を知りたいです!!
ModifyStyle() です。次のようにすれば、ボタンを押すたびに出たり消えたりします。
void CHogeDlg::OnButton1()
{
if (m_picture1.GetStyle() & WS_VISIBLE)
m_picture1.ModifyStyle(WS_VISIBLE, 0, 0);
else
m_picture1.ModifyStyle(0, WS_VISIBLE, 0);
Invalidate();
}
この掲示板は、C の入門者のためのものですから、C++ や MFC の質問には回答が
つきにくいと思います。
|