• ベストアンサー

C++Builderでハンドルを使い

C++Builderで取得したハンドルを使いformの中を (自分で作った関数といいましょうか) 呼び出すにはどのようにしたらいいのでしょうか? わかりにくいかも知れませんがよろしくお願いいたします。

  • gotyan
  • お礼率91% (172/188)

質問者が選んだベストアンサー

  • ベストアンサー
noname#118114
noname#118114
回答No.3

特定フォームを指定(アクティブ状態)にしたい時は以下のソースで出来ます。 HWND Hndle; Hndle = FindWindow(クラス名, ウィンドウタイトル); if( Hndle != NULL) { SetForegroundWindow(Hndle); } FindWindowではクラス名かウィンドウタイトル、片方だけで良いので指定しない方はNULLを指定してください。 指定する時はchar型の文字列で指定します。 両方指定するとより限定して検索できます。 尚、複数ある場合は一番最初のウィンドウを取得します。 SetForegroundWindowは指定したハンドルのウィンドウをアクティブ状態にしてウィンドウ表示を一番前にします。

gotyan
質問者

お礼

たびたび申し訳ございません 大変勉強になりましたありがとうございました

その他の回答 (2)

noname#118114
noname#118114
回答No.2

同じフォームを複数作るといったことはやったことが無いのでよく分かりませんが、 フォームを指定する場合はフォームのハンドルで出来ますが テキストボックスの場合はテキストボックスの取らないと出来ないと思います。

gotyan
質問者

お礼

たびたびありがとうございます フォームを指定する場合のハンドルを入れる関数は どのような物なのでしょうか? よければ教えてきただけないでしょうか? よろしくお願いいたします

noname#118114
noname#118114
回答No.1

ハンドルとは何のハンドルなんでしょうか? 何のハンドルを取得して、それを如何したいのか説明できませんか。

gotyan
質問者

補足

ありがとうございます やりたいことは MDIの様に(MDIでもいいのですが) いくつも同じFormを作ったときに一つのForm指定して そのFormを指定したりFormの中のTextBoxなどの 値を変えたりなどをしたいのですが 一応Formのハンドルを取ってみたのですが どのように使うのだろうと思い..? それともFormのハンドルではだめなのでしょうか? わかりにくいと思いますが よろしくお願いいたします。

関連するQ&A

  • Basicとbuilderについて

    いま、Visual Basic6.0とC++builder5.0でプログラムを書いてるんですが、この2つのプログラムを連動することはできないのでしょうか? つまり、BasicのFormにある"command1"をクリックすると、builderのFormにある"button1"のプログラムが実行される、みたいなことです。(もしくは、その逆) basicだけ(builderだけ)で書けばいいんじゃないか、と思われるかもしれませんが、このようにしたいのです。 どうかよろしくお願いします。

  • C++ Builderについて

    以前から、C言語、C++などをやっていて、最近になって、C++Builder(Version 5.0)を使ってみようと思いました。すこしいじってみたのですが、さまざまなことを簡単にできそうな気がしました。しかしながら、正直なところ分からないことだらけです。ネット上で初心者向けの本を購入したのですが、内容は薄く、自分が目的とするものに達するには十分ではありませんでした。探し方が悪いのか、本もさほど見つかりませんでした・・・・。 また、様々なサイトも見てみたのですが、やはりC++Builderの初歩的な使い方もいまいち分かっていないせいか、わけがわかりません。一応、購入した本で勉強しているのですが・・・・。 できることなら、初歩的なことから、詳しく様々なことが分かり易く載っている本等は無いでしょうか?C言語のときは、ぶ厚い本で勉強しました。そのような本もたくさんあったように思われます。C++Builderには無いのでしょうか?それともCやC++などをみっちりやらなければ、使えないって事なのでしょうか?

  • C++Builder でPanel上にフォームを配置する方法

    C++ Builder 5.0でのプログラミングについて質問です。 プロジェクトにForm1とForm2を作成し、Form1上に TPanelコンポーネントを配置します。 このPanelコンポーネント上にForm2を配置し、Form1上にForm2が存在している状態を作る事は可能でしょうか。 可能でしたらその方法を御教授下さい。 OS Winows2000(SP2) C++ Builder5.0 professionalです。 宜しくお願いします。

  • C++Builderで別Formから呼び出したFormを終了させるには

    C++Builderで別Formから呼び出したFormを終了させるには わかりにくくてすいませんが Form1から Form2を呼び出し そのForm2からForm1を終了させたいのですが もちろんForm2も終了されてもかまいません 又はアプリケーションごと すべて終了させてもかまいません よろしくお願いいたします

  • Borland C++ Builderで簡単なC言語プログラムの作成・実行

    Borland C++ Builderで簡単なCのプログラムを作り実行させるにはどうしたらよいですか? DOS窓上でコンパイルするのではなく、Borland C++ Builderのメニューから行いたいのです。 一応、「ファイル→新規作成→その他→Cファイル」でCのファイルは作成できるのですが、このファイルを「プロジェクト→ユニットのコンパイル」でコンパイルすることができません。 Formオブジェクト(?)を作成しておくとコンパイルできます。 Formは特に必要ないので、FormなしでCのファイルだけをコンパイルしたいのです。 DOS窓でのコンパイル・実行はできます。 事情があってBorland C++ Builderを使わなくてはなりませんので、他のIDEはこの際全く解決になりません。 よろしくお願いします。

  • C++ Builderでユニットの追加

    趣味でプログラミングを行ってますCerapodaと申します。 Builderを使って1つのFormと1つのCpp,hファイルを使ったプログラミングならある程度のところまで出来ると思っているのですが 以前違うプロジェクトで作った関数を新たなプロジェクトで使おうとして いちいちコピー&ペーストするのも大変なので ひとつのユニット&ヘッダーファイルとしてインクルードして使いたいなと思いました。 そこで http://www.osakac.ac.jp/labs/matsuura/japanese/program/C++Builder/Project/projectManyForm.htm このページを参考にしてUnit1とUni2を作成し Unit2に double Analysis::Function(double val) { return(1.0-val); } の関数を追記。 Unit1のcppに C.Function(0.5); と書き加えたのですが [リンカ エラー] 外部シンボル '_C' が未解決… とエラーが表示されてしまいます。 どこに問題があるのか教えていただければ幸いです。 情報が足りない場合は、補足しますのでよろしくお願いします。 また、このような作業で参考になるサイト,URL等ありましたら教えていただけると幸いです。 よろしくお願いします。

  • C++ Builderを使って勉強したいのですが・・・

    C++ Builderを使って勉強したいのですが、購入しないとできないのでしょうか? それは最新のC++Builder 2009じゃなきゃ駄目なんでしょうか? トライアル版、無償バージョンというのでいいのなら、 http://www.codegear.com/jp/downloads/free/cppbuilder この中で、一般的にどれをつかえばいいのでしょうか?

  • C++ Builderでの自作関数

    C++ Builderでの自作関数 初心者のため、初歩的な質問で恐れ入ります。 今、C++ Builderを使いアプリを作成中なのですが、 下記のような自作関数を使いたいのですがどのように書くと エラーがでなくなるのでしょうか? main関数中で、あるif文に該当すると自作関数の内容を行いたいと思っています。 自作関数には、テキストファイルへ文字列データの書き出しをする内容を書いています 今、引数にはvoidを使っていますが、 「TForm1のサイズが不明、あるいはゼロ」「宣言の構文エラー」というエラーが出てしまいます。 voidにしているのが原因でしょうか? 何もわかっていなく恐縮ですが、よろしくお願いします!

  • C++Builder

    卒業研究で昨日からC++Builderを使うようになったのですが、まったくわかりません。 「慣れれば普通にプログラム作るより簡単だ」と教官はいいいますが… それで昨日課題が出ました。 C++Builderでサイコロを作成し、クリックすれば数字が変わる用にしろ との事。 ずっとやってるのですが…ランダムに数字を表示するのってどうゆうの使うんですか? …もぅ初歩的な質問ですいません… 穴があったら入りたい…

  • C++Builderの選択

     いつも勉強させていただいています。どうぞよろしくお願いします。  今手元にあるアプリ(C++Builder5.0のソースコード付き)をいじりたく、 これを機会に初めてC++の勉強をしたいのですが(経験のある言語は Fortran、VBです)、C++Builderのどれを購入するかで迷っております。  ポイントとしましては、 ・上のC++Builder5.0のコードがコンパイル可能なもの  (先日、無料のBorland C++Compiler5.5をダウンロードしてコンパイルを試みても  できませんでしたorz (vcl.hというファイルが足りないようです)が、  C++Builderであればバージョン違いでもコンパイルできるのでしょうか?) ・書籍が比較的多いもの。(調べているとC++Builder6は比較的多そうな?気がしたのですが。。。) ・今後も暫く使えそうなもの。(C++Builder5 Personalとかかなり安いようなのですが、  皆さんもっと新しいもので開発なされているという事でしょうか。。。?) ・¥は7~8万くらいまで?  PersonalとProfessionalの違いや制限もよく分からないので、 もしお詳しい方がいらっしゃいましたら、ぜひ教えていただければと思います。  どうぞよろしくお願いします。

専門家に質問してみよう