タイトル | : Re^4: フルスクリーンにした場合のラベル等の位置 |
記事No | : 13878 |
投稿日 | : 2009/07/22(Wed) 22:10 |
投稿者 | : わいも |
ご返信本当にありがとうございます。 拡大(縮小)率について調べてみました。
>スクリーンの拡大(縮小)率を求めてください。 zoom1 = Me.ScaleWidth / clpScaleWidth zoom2 = Me.ScaleHeight / clpScaleHeight (↑合っていますでしょうか)
>設計したPCでのラベルやその他コントロールの元座標・元大きさ、にその拡大(縮小)率を 掛けてやれば Picture1.Move 3120 * zoom1, 9480 * zoom2, 11111 * zoom1, 2775 * zoom2
というように記述しました。 しかしどうしてもスクリーンの大きさによってピクチャや画像が移動してしまいます。
長々と申し訳ありませんが、下記のプラグラムの中で 何か至らないところがあれば教えてください。 勉強不足ですみません。 Private img As Object Private baseWidth As Integer Private baseHeight As Integer Dim zoom1 As Double Dim zoom2 As Double Private clpScaleWidth As Double Private clpScaleHeight As Double
Private Sub Resize() フラッシュ.Move 0, 0, ScaleWidth, ScaleHeight clpScaleWidth = Me.ScaleWidth clpScaleHeight = Me.ScaleHeight
zoom1 = Me.ScaleWidth / clpScaleWidth zoom2 = Me.ScaleHeight / clpScaleHeight
Picture1.Move 3120 * zoom1, 9480 * zoom2, 11111 * zoom1, 2775 * zoom2
If img Is Nothing Then Exit Sub End If Dim xZoom As Single, yZoom As Single On Error Resume Next xZoom = ScaleWidth / baseWidth yZoom = ScaleHeight / baseHeight If Err.Number <> 0 Then xZoom = 1! yZoom = 1! End If On Error GoTo 0
End Sub
Private Sub Form_Resize() Resize End Sub
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant) Dim doc As Object Set doc = pDisp.Document Dim body As Object Set body = doc.body With body.runtimeStyle .padding = "0" .margin = "0" .overflow = "hidden" .BorderStyle = "none" .BackgroundColor = "ThreeDFace" End With Set img = doc.getElementsByTagName("IMG")(0) baseWidth = img.clientWidth baseHeight = img.clientHeight
Resize End Sub
|