アプリ版:「スタンプのみでお礼する」機能のリリースについて

VB6からWindowsのカーソルを変更する方法を教えてください。
お願いします。

A 回答 (5件)

WinME上のVSVB6で試してみたところ、



Sub Main()

Dim nCounter As Long


Screen.MousePointer = vbHourglass

For nCounter = 0 To 420000000
''''ここは時間稼ぎ
Next nCounter
Screen.MousePointer = vbDefault

End

End Sub

で、カーソルは変わるには変わります。
でも DoEvents を入れたらとたんに変になりますね。
    • good
    • 0

マウスポインターを変更するには、screen.mousepointerに値を設定すれば良いのです。



設定する値は、VBで変数が提供されています。
(詳しくは、HELPで見てくださいね。)

砂時計=vbHourGrass
初期値=vbDefault

処理を実行する前に砂時計をセットして、終了したら初期値をセットするといった感じで、いかがでしょう?

最後に一言。
回答と返す人たちも、手助けできるようにと思って回答してくれていると思います。
質問する人も、どうしたら意図を感じとってもらえるか、少しだけ考えてから質問しましょう。
じゃあ、頑張ってください。
    • good
    • 0
この回答へのお礼

ご忠告ありがとうございます。

私の方でも質問の仕方がよくなかったと思ったので、
下のほうに再度書かせて頂いています。
そちらも見ていただけたら幸いです。

一応書かせていただきます。
フォームのない実行ファイルを起動したときに、
マウスポインタを砂時計にしたいんです。
screen.mousepointerはフォーム内でしか有効じゃないかと思います。
やりたいのは「デスクトップ上、どこにいても砂時計」です。

ご理解いただけましたでしょうか?

お礼日時:2001/05/09 12:40

マウスカーソルは通常、実行しているアプリケーションが握っています。


ゆえに、VBで作ったものは簡単に変更できることは了承していることと思います。
そして、シェルに関連しているものも、ウィンドウズの設定で可能です。

ただし、他のアプリケーションに関しては、ウィンドウハンドルを取得して、
それに関して、ウィンドウのクラスのhCursorメンバを変更することによって
変更することになります。
    • good
    • 0
この回答へのお礼

ありがとうございます。
ご参考にさせていただきます。

お礼日時:2001/05/09 12:46

なんのカーソル??



マウスカーソル?
入力カーソル?

 マウスカーソルなら、使用しているコントローラに依存して変更可能です。

 入力カーソルの変更は簡単に出来ません。APIを駆使するか、入力カーソルを変更出来るコンポーネントを作ればOKです。


 なんにせよどんな事がしないのかを明確に書いて下さいね。
    • good
    • 0
この回答へのお礼

失礼しました。
下でも書きましたが、フォームのない実行ファイルを起動した際に、
マウスポインタをデフォルトから砂時計にしたいです。
で、実行終了前に砂時計からデフォルトに戻したいのです。

APIでSetCursorだとかLoadImageだとか使おうとしたのですが、
うまくできません。

すいませんが、よろしくお願いします。

お礼日時:2001/05/08 18:23

> VB6からWindowsのカーソルを変更する方法を教えてください。


実行中に砂時計にするならScreen.MousePointer=vbHourGlass(つづり忘れた!)という意味でしょうか?
自分自身のフォーム上ならMe(ここにはフォーム名).MousePointerでOK。


それとも[コントロールパネル]-[マウス]-[ポインタ]-[デザイン]で
指定するマウスポインタでしょうか?
    • good
    • 0
この回答へのお礼

失礼しました。
詳しく書かせて頂きます。

フォームのない実行ファイルを起動した際に、
マウスポインタをデフォルトから砂時計にしたいです。
(なのでScreen.Mousepointerは使えない?)
で、実行終了前に砂時計からデフォルトに戻したいのです。
すいません、よろしくお願いします。

お礼日時:2001/05/08 18:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています