tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^9: AutoScroll
投稿日: 2009/07/25(Sat) 14:37
投稿者魔界の仮面弁士
> > 少なくとも、スクロール完了時には正常に再描画されるようになります。
> これだと、(1)の一緒にスクロールと言う点でダメでした。
そもそも、今はどのようにしているのでしょうか?

Panel の背景画像だとしたら、(1) の要求は満たせないので、何にせよ、
Panel の上に何か(例: PictureBox)を載せて、
そこに画像を割り当てる必要があるはずですが。


> > 見た目の話では無く、クリック時の問題だけであるならば、
> > PictureBox のクリック時に、Panel のクリック時の処理を呼び出せば済むと思います。
> かなりのコーディング修正になるので、この方法は保留とさせてください。
画面イメージを見ていないので、なんとも言えないのですが、クリック時の処理のために、
 Sub Panel1_Click(…) Handles Panel1.Click

 Sub Panel1_Click(…) Handles Panel1.Click, PictureBox1.Click
とするだけでは駄目なのでしょうか?

> Form1.Designer.vbの書換えですか。大変そうですね。f(^^;
1行変更するだけですよ。Form1.Designer.vb を修正したくなければ、
Form1_Load に、Controls.Add しなおすコードを記述しても OK です。

> ですが、そうするしかないような気もしてきました。
本当に「そうするしかない」のですか? その方法では問題を解決できなかったのですよね?(↓)

> > > Panelを透過させて後ろにあるPictureBoxを映し出せたら良いのですが。
> > 出来ますが、それだと描画崩れの問題は解決できない(むしろ悪化する)と思いますよ。
> 試してみましら、その通りでした・・・。


もし、パネル背景 の PictureBox を表示させつつ、スクロール崩れにも対応させるなら、

 [Form1]
 ┣[Panel1] AutoScroll = True
 ┃┣[PictureBox1] Image = 任意画像
 ┃┃┗[Panel2] BackColor = Transparent、Click イベント処理用
 ┃┃ ┗[その他のコントロール]
 ┃┗[その他のコントロール]
 ┗[その他のコントロール]

という構成にするという手もあるかと。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。