2009/02/27(Fri) 16:29:42 編集(投稿者)
<pre><pre>■No33409 (.SHO さん) に返信
> ■No33408 (ken さん) に返信
> 
>>下記のようにしてみたのですが、まだパネルの左部と下部が切れ、右部と上部にフォームの一部が残ってしまいます。
> 
> 右部と上部が残るんですか?
> 左部と上部じゃなくて?
━:フォームの境界線
─:パネルの境界線
*:フォーム
┏━━━━━━━┓
┃*******┃
┃*┌───┐*┃
┃*│   │*┃
┃*│   │*┃
┃*└───┘*┃
┃*******┃
┗━━━━━━━┛
から、パネルのサイズでくりぬこうとしたのですが、
   ***** 
   ───┐* 
      │* 
      │* 
         
         
上図のようにパネルの左、下が切れ、上、右にフォームが残っているという状態です。
試したコード
Dim rF As Rectangle = Me.RectangleToScreen(Me.ClientRectangle)
Dim rP As Rectangle = Me.Panel1.RectangleToScreen(Me.Panel1.ClientRectangle)
path.AddRectangle( _
    New Rectangle( _
        Me.Panel1.Left + (rP.Left - rF.Left), _
        Me.Panel1.Top + (rP.Top - rF.Top), _
        Me.Panel1.Width, _
        Me.Panel1.Height _
    ) _
)
'形を変更
Me.Region = New Region(path)
</pre></pre>