[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2005/02/26(Sat) 23:56
投稿者名:toshi
Eメール:
URL :
タイトル:
Form内でのLine文につて
最近VB6を覚え始めたtoshiというものです。
Form_Load()の中でLine文を使用したのですが表示されません。
構文は以下のとうりです

DrawWidth = 1
Line (10, 10)-(500, 250), vbMagenta

違う関数内(Command1など)で実行すると表示されるのですが...

よきアドバイスを宜しくお願いします。

投稿時間:2005/02/27(Sun) 02:44
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re: Form内でのLine文につて
ヘルプの『テキストおよびグラフィックスの操作』の項を一通り読むと、
その理由がわかるかと思いますよ。


> Form_Load()の中でLine文を使用したのですが表示されません。
描画前に、「Me.Show」というコードを入れておけば、表示されるかと。


> 違う関数内(Command1など)で実行すると表示されるのですが...
ためしに、Command1で描画した後、その線の上に、別のウィンドウ
(メモ帳でもエクスプローラでも何でも良い)を重ねてから、
その重ねたウィンドウをどけてみてください。描いた線が消えてしまうはずです。


描画領域が画面上に表示されていない場合は、描いた内容は消えてしまいます。
このため、描画処理は通常、Paintイベントに書くようにしてください。
(Paintイベントは、再描画の必要が生じるたびに発生するイベントです)
あるいは、再描画の手間を省くために、AutoRedrawプロパティをTrueにするという手もあります。

投稿時間:2005/02/27(Sun) 13:09
投稿者名:toshi
Eメール:
URL :
タイトル:
Re^2: Form内でのLine文につて
魔界の仮面弁士さんどうもありがとうございます。
「Me.Show」を追加するときちんと描画されました!

Paintイベントは難しそうなので、もう少し勉強しようと思います。
ほんとうにありがとうございました。