• 締切済み

Visual Basicと大きいフォントについて

フォームにimageコントロールを配置し日本地図を描画させ、各都道府県毎に コマンドボタンを配置して、ボタンをクリックすることで都道府県IDを 取得するフォームを作りました。 これでパッケージを作り、配布したところ、大きいフォントで使用している パソコンユーザーは、都道府県からコマンドボタンがずれてしまいます。 大きいフォントのパソコンでもずれないようにする方法はないでしょうか? ちなみに、 Private Sub Form_Resize() Image1.Width = Me.ScaleWidth Image1.Height = Me.ScaleHeight End Sub では、ダメでした。 よろしくお願いします。

みんなの回答

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.2

FormのScaleModeをピクセルにしてみてください。 確かこれで平気だったような・・・

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.1

image1.Stretch = True では?

関連するQ&A

  • フォームがリサイズされた時の各コントロールの位置変更コードについて

    教えてください。 前々から疑問だったのですが、VBでフォームをリサイズした場合に それぞれのコントロールもそれに合わせて大きさが変更されたり 移動したりという状態にするには、当然Form_Resizeのコードを 書く必要があると思うのですが、VBでツールを作成される方は 皆さんひとつひとつのコントロールの位置を計算しながら毎回 コードを書いているのでしょうか? OCXなどを使うと、勝手にコントロールの位置を調整してくれるものも ありますが、やはり皆さん自分でコードを書いていらっしゃるのでしょうか? 私が分かるのは、フォームにテキストボックスのみを貼り付けて、 Private Sub Form_Resize() Form1.text1.Top = 0 Form1.text1.Left = 0 Form1.text1.Width = ScaleWidth Form1.text1.Height = ScaleHeight End Sub と書くと、リサイズに合わせてテキストボックスが画面いっぱいにサイズ変更 するというものです。 コマンドボタンとか色々貼り付けた状態ではどのように書けばいいのか いまひとつ分かりません。 皆さんはどのようにされているのでしょうか? 是非是非教えてください。

  • エクセルについての質問です。

    エクセルについての質問です。 現在、ユーザーフォーム上に、いくつかのコマンドボタンを配置して、 さらに、スクロールによって、たくさんのコマンドボタンをみれるようにしています。 特に、コマンドボタンにマウスカーソルを合わせると、コマンドボタンの隣に図を表示する構成です。 しかしながら、図の表示位置をユーザーフォームから座標を指定しているため、 スクロールして、コマンドボタンの位置が変わると、図の表示位置がコマンドボタンに追従せず、ずれてしまいます。 なにか良い方法はないでしょうか。 Private Sub UserForm_Initialize() Me.StartUpPosition = 0 Me.Top = UserForm1.Top + 80 Me.Left = UserForm1.Left + 70 Me.Height = 80 Me.Width = 90 End Sub

  • セルに貼り付けたコマンドボタンにマウスカーソルを合わせると、

    セルに貼り付けたコマンドボタンにマウスカーソルを合わせると、 コマンドボタンの隣に、ユーザーフォームが表示されるマクロを組んでおります。 しかし、エクセルが最大表示のときは、コマンドボタンの隣にユーザーフォームが表示されるのですが、 エクセルの表示を小さくしたり、画面を下方にスクロールしたりすると、 コマンドボタンに追従せずに、変な場所にユーザーフォームが表示されてしまいます。 できれば、ユーザーフォームの表示位置を、コマンドボタンを基点としたいのですが、 何か良い方法はありますでしょうか。 現在は、アプリケーションの位置を基点にしております。 よろしくお願いします。 Private Sub UserForm_Initialize() Me.StartUpPosition = 0 Me.Top = Application.Top + 180 Me.Left = Application.Left + 100 Me.Height = 80 Me.Width = 100 End Sub

  • 保存されない理由は?accessvba

    図のようにフォームの上にサブフォームを設置して、 コマンドボタンとテキストボックス(txt_高さ)を設置しました。 コードは、 Private Sub コマンド1_Click() Me.サブフォーム.Height = Me.txt_高さ.Value End Sub です。 コマンドボタンを押すと、サブフォームの高さを設定する仕様なのですが、 サブフォームの高さを変化させて(例えば、2500twips)、 CTRL+Sを押して、バツボタンでフォームを閉じて、 再度フォームを開いても、2500twipsの高さではないです。 フォームを開いている最中に、VBAで変化させたサイズで保存して、 再度開いた時もその高さにしたいのですが、無理なのでしょうか? ヘルプ(SubForm."Height/高さ" プロパティ)には 「値の取得および設定が可能です。」と書いてありますから 設定も可能なのでは?と思っています。

  • visual studio 2008 professional edi

    visual studio 2008 professional edition でvisual basic6のプログラムを開く際に 1.バージョン 2.フォームのプロパティ 3.コントロールのプロパティ が書かれている部分で 「宣言が必要です」というエラーが出るのですが対処法が分かりません。 どなたか教えていただけないでしょうか? VERSION 5.00 Begin VB.Form Form1 Caption = "Form1" ClientHeight = 9510 ClientLeft = 390 ClientTop = 660 ClientWidth = 11100 LinkTopic = "Form1" ScaleHeight = 9510 ScaleWidth = 11100 Begin VB.Frame Frame10 Caption = "cfs number" Height = 1335 Left = 6600 TabIndex = 117 Top = 9840 Width = 1455 ........ と続きます。

  • Accessユーザーフォームでコマンドボタンのcaptionについてで

    Accessユーザーフォームでコマンドボタンのcaptionについてですが Aテーブルを基に表記式でフォームを作成し、コマンドボタンを配置します。 この際、コマンドボタンのcaptionをAテーブルのフィールド値を表示したいのですが 可能でしょうか? フォームを開く際に Private Sub フォーム_Load() Me!コマンド1.Caption = Me![フィールド1] End Sub とイベントを発生させましたが、全てのボタンのCaptionがAテーブル1行目、 フィールド1の値で表示されてしまいます。 Dlookupを使用しても結果か同じでしたので、 フォームをLoadした時のMe![フィールド1]の値がAテーブル1行目の値であり その値でCaptionが設定されていであろうことはなんとなくわかるのですが 何をどうすればいいか行き詰ってしまいました。 どんなやり方があるのかお教えください。

  • 親フォーム名を取得するには?

    フォーム1を作り、さらにフォーム2を作り、 フォーム1にはめ込んで、フォーム2をサブフォームとしました。 そのフォーム2にコマンドボタンを作成しました。 そしてそのコマンドボタンをクリックしたときに、メッセージを表示させたいのですが、 内容は 「現在のフォームの親フォームはフォーム1です」です。 Private Sub コマンド0_Click() MsgBox Me.Name & "の親フォームは " & Me.Parent & "です" End Sub だと実行時エラー450になります。

  • コマンドボタンを押すと、ユーザーフォームが表示されるマクロを組んでおり

    コマンドボタンを押すと、ユーザーフォームが表示されるマクロを組んでおります。 このとき、ユーザーフォームの表示位置をあるセル(例えばE12)の隣にしたいのですが、 下記のマクロでは、画面をスクロールした場合に対応できません。 恐れ入りますが、ご教示いただけるとたすかります。。 Private Sub UserForm_Initialize() Me.StartUpPosition = 0 Me.Top = Application.Top + 180 Me.Left = Application.Left + 100 Me.Height = 80 Me.Width = 100 End Sub 投稿日時 - 2010-03-11 10:09:05

  • エクセルのユーザーフォームについて

    パスワード入力用のしかけです。 ワークシートに配置したコマンドボタンを押してユーザーフォームを呼び出します。 Private Sub CommandButton1_Click() UserForm1.Show End Sub ユーザーフォームにはテキストボックスとコマンドボタンを配置しております。 テキストボックスのPasswordCharには * を設定しました。 Private Sub CommandButton1_Click() If StrConv(TextBox1.Text, vbLowerCase) = "abcd" Then MsgBox "OK!" Unload Me Else TextBox1.Text = "" TextBox1.SetFocus End If End Sub これで、ABCDまたはabcdと入力され、ユーザーフォーム上のコマンドボタンをクリックすれば、ユーザーフォームは消えます。 でも、いちいちマウスでクリックするのが面倒なのでEnterキー1回でユーザーフォームを消したいのです。 今でも、一度Enterキーを押すと、ボタンにフォーカスが移動するので、さらにEnterで消えますが、二度ではなくEnterキー1回でユーザーフォームを消すにはどうすればよいのでしょうか? ユーザーフォームは使ったことがないのでわかりません。 よろしくお願いします。

  • ユーザーフォームが表示前にエラーになります。

    お世話になります。 Excelのシート上にコマンドボタンを配置して それをクリックするとユーザーフォームが表示されるようにしたいのですが、下記のコードだと「フォーカスがありません」と1行目でエラーで止まってしまいます。 解決方法を教えてください。 Private Sub コマンドボタン_Click() ユーザーフォーム.Show End Sub よろしくお願いします!

専門家に質問してみよう