
Private Sub Form_Load()
Form1.ScaleMode = 0
Form1.Scale (-10, 10)-(10, -10)
Form1.Line (-10, 0)-(10, 0)
Form1.Line (0, -10)-(0, 10)
End Sub
とやって座標画面を作ろうとしましたが
Lineが表示されません。
仕方が無いので
Private Sub Form_Load()
Form1.ScaleMode = 0
Form1.Scale (-10, 10)-(10, -10)
End Sub
Private Sub Form_Activate()
Form1.Line (-10, 0)-(10, 0)
Form1.Line (0, -10)-(0, 10)
End Sub
とやりました。
そういうものだとあきらめるしかないのでしょうか?
No.2ベストアンサー
- 回答日時:
仕様です。
loadされた時点ではformそのものはまだメモリ内にしかなく、描画されていません。
ですのでformが描画された後にユーザ描画を行うようコーディングします。
No.5
- 回答日時:
No.4ですが、すみませんねー。
Form1.Scaleを見過ごしてました。よく見ればすぐわかるんですけどね。(^^;
画面中央部を通る縦横一杯の直線が表示されますね。
フォームの大きさを変えても、下記のように変数を使ってフォームのサイズを取得し表示すれば、常に中央に線を引いてくれるようにもできます。
MeはForm1と同じ自身のフォームのことなのでForm1でもOKです。
Private Sub Form_Load()
Me.ScaleMode = 0
End Sub
Private Sub Form_Resize()
Dim xx As Long, yy As Long
Me.Cls
xx = Me.ScaleWidth / 2: yy = Me.ScaleHeight / 2
Me.Scale (-xx, yy)-(xx, -yy)
Me.Show
Me.Line (-xx, 0)-(xx, 0)
Me.Line (0, -yy)-(0, yy)
End Sub
No.4
- 回答日時:
Form1.ScaleMode=0 ・・・ユーザー定義の単位なので、単位がどうなってるの?
それによっては、画面領域外に描画しているのでは。
定義を=3(ピクセル)とか、=6(mm)とかに変えて見た場合は?
Line文の前に Me.Show を入れForm表示にしてから描画。
No.3
- 回答日時:
No1さんの言ってる事と同じになるんだけど・・・
ウィンドウが隠れた時に書いているのが問題じゃないかと思うので、Form1.Line以前に
Form1.Visible = True
または
Form1.Show
を入れるでは?
または、
Form1.AutoRedraw = True
にしておけば他のウィンドウに隠れた場合の再描画を考える必要も無いので、手っ取り早いのでは?
No.1
- 回答日時:
Loadの時点ではフォームが表示されていないので、描画内容は実質無効になってしまっているのでは?
Paintイベントで描画するのが普通かと思います。
あるいは描画内容を保存するプロパティがあったような気もしなくもないですが…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 九九の答えの計算 3 2022/12/20 22:13
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) リストボックス セルの値を取得する 1 2022/05/21 20:47
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Visual Basic(VBA) ユーザーフォームに2つのコンボボックス銀行名「ConboBox1」支店名を「ConboBox2」とし 4 2022/08/03 17:34
- Visual Basic(VBA) ワークシート内を検索 1 2022/12/19 23:46
- Excel(エクセル) ハイパーリンクの削除について 2 2022/11/10 07:32
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Minecraft 統合版(PC)の描画距...
-
[VB.net] DataGridViewの列ヘッ...
-
NVIDIAのシェーダーキャッシュ
-
TextBoxに文字を書いても表示さ...
-
塗りつぶしモード ALTERNATEと...
-
MFCでOnPaintのタイミング
-
VBAにGDI+を参照させる方法
-
文字の行間
-
iPhoneSDK 楕円の描画およびグ...
-
InvalidateRectの使い方について
-
VC++プログラムをつかったBMP画...
-
MFCのタイマーのつかい方を教え...
-
非クライアント領域への描画に...
-
ClistBoxでオーナードローがよ...
-
ブレゼンハムのアルゴリズムに...
-
GDI+について
-
Form1 Load で実行されない。
-
OneNote 2010 文字と描画がずれる
-
C# Graphics.DrawLine();で行う...
-
iPhone SDKで、ループしている...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Minecraft 統合版(PC)の描画距...
-
[VB.net] DataGridViewの列ヘッ...
-
word
-
TextBoxに文字を書いても表示さ...
-
VB6,リストボックスの特定行の...
-
NVIDIAのシェーダーキャッシュ
-
MFCでOnPaintのタイミング
-
panelのスクロール表示について
-
VC++プログラムをつかったBMP画...
-
Labelの文字をスクロールする際...
-
UpdateData( FALSE); による文...
-
VBAにGDI+を参照させる方法
-
CStaticコントロールの静的イメ...
-
FlexGridの一部のみ表示を更新...
-
Form1 Load で実行されない。
-
VB.netでのライン描画方法がわ...
-
重いグラフィックス処理
-
InvalidateRectの使い方について
-
SHGetFileInfoでアイコンが取得...
-
OneNote 2010 文字と描画がずれる
おすすめ情報