- - PR -
メッセージボックスのアイコンについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-04-19 18:49
いつもお世話になっております。
今回、カスタムメッセージボックスを作成することになりました。 そこで、通常のメッセージボックスに表示される 警告・インフォメーションなどのアイコンを表示させたいのですが 表示はされますが、汚く(背景がギザギザ)表示されています。 方法としては、 @フォームにPictureBoxを作成 AそのPictureBoxのImageにシステムアイコンクラスのToBitmapを設定 としています。 下記がそのコードです。 'Errorアイコン表示 Me.picIcon.Image = SystemIcons.Error.ToBitmap 環境は WindowsXP VisualStudio2003 VB.NET で開発しています。 いろいろ検索して、その他の方法も試しましたが、うまくいきません。 どなたかよろしくお願いいたします。 | ||||
|
投稿日時: 2007-04-19 19:02
イメージの実際の大きさを、picturebox に設定してみたら? _________________ | ||||
|
投稿日時: 2007-04-19 19:51
いや、たぶん Stretch による弊害ではなくて、 32 ビット透過アイコンが透過されなくなるとかそういった類の話だと思います。 # 環境がないので確認できていませんが... _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2007-04-20 07:25
10数年前に経験があるのですが、透過か。
その時は、外注した機能がカスタムメイドしてくれていたのですが、標準ので良かったので、標準のに差し替えてもらいました。詳しいことは調べていない。 _________________ | ||||
|
投稿日時: 2007-04-20 09:16
どこから引っ張り出してきたアイコンを表示しようとしてるんでしょうね。 システムリソースに入っているアイコンは透過色アリのイメージタイプを含んでいると思うけど、サイズじゃなくて、透過色のアリ/ナシを指定してアイコンから画像を抽出できたっけ? | ||||
|
投稿日時: 2007-04-20 10:10
試した感じ、どうも .NET 1.1 の PictureBox の問題っぽいですね。.NET 2.0 なら Image にセットするだけで普通に表示できました。
PictureBox を使うのをやめて、Control から派生させたコントロール(別に Control を直接使っても構いませんけど)を使って OnPaint or Paint で Graphics.DrawIcon するようにすれば、私のところではちゃんと表示できるようになりました。 | ||||
|
投稿日時: 2007-04-24 10:59
返答が遅れて申し訳ございません。
Jittaさん、じゃんぬねっとさん、渋木宏明(ひどり)さん、Hongliangさん ありがとうございます。 Hongliangさんの言われている、派生コントロールから描画をためしてみたいと思います。 |
1