VB.NETでフォームの内側だけを無くす(?)方法を教えて下さい。

スクリーンショットを指定のサイズで撮れるようにしようと、Formを境界線はそのままに内側だけを透明にしたいのですが・・・
Me.TransparencyKey = Color.Silverのように、透明色に指定しても、実際撮影すると、シルバーがそのまま写ってしまいます。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2011/12/09 16:02:16
  • 終了:2011/12/16 16:05:02

回答(1件)

id:psne No.1

ぽけっとしすてむ回答回数465ベストアンサー獲得回数2512011/12/09 16:55:30

Me.TransparencyKey = Me.BackColor
で大丈夫な気もしますが、Snipping Toolのようなものを作りたいのでしょうか?
f:id:psne:20111209164656p:image
使用したソースはIT.NET VB.NET - スクリーンショットを取得するには... (2)

他1件のコメントを見る
id:psne

少し発想を変えて、ウインドウを非表示にしてからスクリーンショットを撮り、
ウインドウ部分のビットマップ領域を計算してトリミングする方法もあります。
Snipping Toolは、起動した瞬間のスクリーンショットを撮っているようです。

2011/12/09 17:21:11
id:hokuto0127

なるほど。そんな仕組みだったんですね。
撮影時には、TransparencyKeyは無視されるようです・・・。
いろいろといつも有難うございます。

2011/12/09 17:32:14

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません