![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
ご質問させていただきます。
Visual Basic 2005 を使っています。
やりたいこととは、
実行状態のフォーム(GroupBoxオブジェクト等)にTextBoxや線/円オブジェクトを置いたり、
そのオブジェクトをマウスクリックで”選択して”縦横のサイズを変更したり、位置を変更したいのです。
(できればマウス右クリックでプロパティの変更なども)
大まかに言えば、
実行状態のフォームに「デザイン状態の操作」や「Excel上の図形描画の操作」と同じようなことができるのでしょうか?
(ツールボックスからデザインフォーム上へのオブジェクトの配置、配置したオブジェクトに
マウスクリックをしてのサイズ変更、コピー&ペースト処理など)
はじめは、直線や四角形を描画して期待通りのことができるかと思いましたが、
やはり描画した後にその線を”つまむ”ことができませんでした。
ちなみに、VB2005ではLineやShape系はないので、VB2005 PowerPacks2.0 を入れることで、
VB6でのLineコントロールみたいな動きはできました。
良いアドバイスありましたらお願いいたします。
No.1ベストアンサー
- 回答日時:
プログラムの中でプロパティの値をプログラムに組み込んだように変えて瞬時に実行してしまうというのが主流の考えと思います。
そのプロパティの値をユーザーに選ばせるなら、値の応答を待つという仕組みにします。デザインモードにわざわざして、そこで編集などさせて終ったという通知をもらってまた続行などは、どうしてもやりたければ、もっとスキルを上達してから研究すればよい。通常の解説書には無い発想です。
むしろ実行モード中に図形オブジェクトの位置や色やその他をマウス指示通り動かすのはエクセルなどでもあるが(例 行高の変更)、相当プロに混じって長期訓練をしないと、ここでの回答でできるなんてとんでもない、とやり方はわからない者ながら、断言できる。
デザインモードではないにしろ、そういうモードに入る(場所とダブルクリックなどで)ーー>マウスの動きをとらえ、プロパティを変化させる。プロパティを変化させると実際の画像等はリアルタイムで反映する仕組みは、基本的に備わっている。
昔の旧いコンピュタ時代は、プロパティ値の変数値を変えるとともに+新しい変数値で実体(見た目など)を変えて表示するプログラムを実行することと2段構え的にしないとダメだったが、ウインドウシステムやオブジェクト指向ではプロパティの変更があると、リアルタイムに変更を反映するプログラムが走るようになっている。
唯一のお答えありがとうございました。
希望することは高度な技術になってくるんですね。
何かインストールしたり、ExcelのOCXか何か登録すればできそうなものかと思っておりました。
一筋縄じゃいかないってことが判っただけでも助かります。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) テキストの背後にあるオブジェクトとは 3 2023/01/03 20:22
- Photoshop(フォトショップ) インデザイン 上で、フォトショップの線の色を変えたい 4 2022/06/12 18:49
- その他(ソフトウェア) Figma 1 2023/06/23 14:22
- Illustrator(イラストレーター) Illustratorでオブジェクトの色が勝手に変わって困っています。 4 2022/09/04 18:47
- Windows 10 画面上の[タスクバー]の位置の変更 1 2022/06/12 21:10
- Illustrator(イラストレーター) ワード。グラデーションがうまく行かない。 2 2022/09/28 19:56
- Windows 10 Windowsのアイコンの整列が変になりました 2 2022/06/24 00:02
- Excel(エクセル) 【エクセルマクロ】既に開いているIEの、サイズや表示位置を変更するには 4 2022/12/01 22:57
- JavaScript オブジェクト配列の各メンバを任意の式で評価して、その評価値が最大のオブジェクトを返す関数はありますか 2 2023/05/20 15:02
- Illustrator(イラストレーター) 【シェイプ形成ツール】でうまく分割できない 1 2022/05/26 10:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【エクセルのマクロ】クリップ...
-
エクセルVBAでセル番地を指定し...
-
アクセスVBAのMe!と[ ]
-
Excel VBAでマウスの左クリック...
-
VBA エンターキーでイベントに...
-
ACCESSマクロ、Me![氏名] その...
-
WebBrowserオブジェクトにて、...
-
アクセス 名前のつけ方について。
-
Accessのフォーム上にエクセル...
-
文字列で小数点以下の0を削除し...
-
Webbrowserで完全にHPを表示さ...
-
ChexBox1等の「1」を変数にで...
-
現在アクティブになっているオ...
-
NoxPlayerとUWSCのadbの座標に...
-
「ご処理進めて頂きますようお...
-
Excel VBAで他アプリケーション...
-
インタラクティブの反対語は?
-
CloseとDisposeの違い
-
C# WMPメディアの終了検知 その2
-
「PC Helpsoft Driver Updated...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA エンターキーでイベントに...
-
アクセスVBAのMe!と[ ]
-
文字列で小数点以下の0を削除し...
-
Excel VBAでマウスの左クリック...
-
【エクセルのマクロ】クリップ...
-
エクセルVBAでセル番地を指定し...
-
Accessのフォーム上にエクセル...
-
コードでオブジェクトを最前面に
-
日本語の文字化けを直す方法
-
現在アクティブになっているオ...
-
Imageコントロールにグラフを表...
-
Excel2007 でのチェックボック...
-
PowerpointVBAで指定のShapeオ...
-
Access からオブジェクトとして...
-
エクセルのデータをwebフォーム...
-
【エクセル】複数のTextBoxに共...
-
[C#] DataGridViewの項目名
-
カッコ付けのオブジェクト名を...
-
ExcelのシートをAccessで表示し...
-
ユーザーフォームのインポート...
おすすめ情報