ビットマップとして保存するのであれば、SavePictureメソッドを使用すれば よいのですが、アイコンを作成するには、適当なものがありません。
ここでは、アイコンのフォーマットをバイナリデータで順に保存してアイコン を作成しています。サンプルでは、この処理をクラス化しているので、以下の コードを参考にして使用して下さい。
★クラスの使用法★
処理が少し違うため、サイズが16*16のものと32*32,64*64のものを別の プロシージャで処理しています。これは、サイズが16*16のものに対して、 ビットマップと同様に横方向1ラインが4バイトになるように0を追加 させているためです。
(16*16のアイコン)
Dim msg As String Dim csi As New CSaveIcon On Error GoTo SAVE16 Me.MousePointer = 11 Call csi.SaveIcon16(Picture1, Text1.Text) Me.MousePointer = 0 Exit Sub SAVE16: Me.MousePointer = 0 msg = Err.Description MsgBox msg, vbCritical(32*32のアイコン)
Dim msg As String Dim csi As New CSaveIcon On Error GoTo SAVE32 Me.MousePointer = 11 Call csi.SaveIcon(Picture1, Text1.Text, 32&, 32&) Me.MousePointer = 0 Exit Sub SAVE32: Me.MousePointer = 0 msg = Err.Description MsgBox msg, vbCritical
(サンプルプログラムの動作確認)
機種 PC-9821V13S OS Windows95 開発ツール Visual Basic Ver.4.0 更新日 99/10/10 ダウンロード SaveIcon.lzh(3.98KB)
Visual Basic Ver.5.0でも問題なく動作すると思います。
なお、このコーナーに掲載されているプログラムコード、およびプログラムファ イルが原因で起きた損害などに関して一切の責任を負うことはできません。
★このコーナーに掲載されているプログラムコード、およびプログラムファ イルを無断で配布・転載することは、原則として禁止です。