- ベストアンサー
フォームアイコン
始めまして、現在VB6.0SP4で開発を行っています。 フォームアイコンを非表示にする 方法がわからなくて困っています。 ご存知の方がいたら、ご教授お願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
違っていたら申し訳ないのですが ControlBoxをFalseにした感じですか? それなら '------------------------------ Option Explicit Private Const GWL_STYLE = (-16) Private Const WS_SYSMENU = &H80000 Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Private Sub Form_Load() Dim style As Long style = GetWindowLong(Form1.hwnd, GWL_STYLE) SetWindowLong Form1.hwnd, GWL_STYLE, style - WS_SYSMENU End Sub '------------------------------ な感じはどうですか?
その他の回答 (1)
- y_an
- ベストアンサー率57% (24/42)
簡単な方法では、フォームのBorderStyleを 3:固定ダイアログ 4:固定ツールウィンドウ 5:可変ツールウィンドウ のいずれかにすると消えます。 但し、ShowInTaskbarプロパティをTrueにした場合、 タスクバー上にはアイコンは表示される等の制限もあるようです。 タスクバー上にはアイコンは透過色をサポートしているアイコンエディタにて 透過色のみのアイコンをセットすればスペースは開きますが、 ぱっと見では内容に見えます。 (そんな答えを待ってはいないのでしょうけど・・・) ちなみに当方の環境は OS:XP Home SP2 VS:SP5 です。
補足
回答ありがとうございます。 BorderStyleは2のままやりたいんですよね。 プロパティでControlBoxをFalseにするとそれっぽくなるんですが これをソース上でできないか悩んでいます。
お礼
ありがとうございます。 この通りでした。