
初めまして。プログラミングを始めて1ヶ月程度の超初心者です。
開発環境はBorland C++ Builder 6 です。
ボタンやエディットボックスを含むフォームアプリケーション(フォーム:Form1)、
Button1をクリックするとファイルオープンダイアログを開き、選択されたファイル名をEdit1に表示
Button2をクリックするとファイルセーブダイアログを開き、選択されたファイル名をEdit2に表示
Button3をクリックするとEdit1で指定されたファイルを開き、演算した結果をEdit2で指定したファイルに書き込み、保存する
といったプログラムを作成しました。
これらを全て、「入力ファイル名」と「出力ファイル名」を引数とするmain関数に組み込もうとしているところで、Button1Click(Sender)などを使えばそのまま流用できるところまではわかったのですが、フォームを含め、これらのクラスのmain関数内での使い方がよくわかりません。
クラスの定義などはヘッダーファイル内でされているだけではmain関数内では使用できないのでしょうか?
定義や宣言の仕方について具体的にお教え願います。
よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
最初に確認。
Windowsアプリケーションと、フォームは別のものです。
BCBでWindowsアプリケーションを作成すると、デフォルトでは、
Project1:Windowsアプリケーション名 そのソースはProject1.cpp
TForm1:フォーム名 そのソースはUnit1.cpp
となります。
今、コンソールアプリケーションから呼出したいのはフォームで良いのですね?
回答する方としては、呼出したいのがWindowsアプリケーションなのかフォームなのか最初からハッキリさせて欲しいわけです。
また、
>コンソールから実行したときに「ボタンを押す」、「エディットボックスに
>テキストを入れる」といった処理をさせたい
これは『コンソールアプリケーションからフォームを表示し、エンドユーザにフォーム上のボタンやエディットボックスを操作させる』という意味でしょうか?
それとも『コンソールアプリケーションがフォーム上のボタンやエディットボックスを操作する』という意味でしょうか?
回答者としては質問者の意図がどちらなのか補足の文章を読んだだけでは判断がつきません。こういうところも誤解が生じないよう明確にして欲しいわけです。
あと、質問にある引数云々はどうするのでしょうか?
このように質問の意図は未だによく分からないのですが、とりあえずコンソールアプリケーションからフォームを表示する手順。
1.コンソールアプリケーションのプロジェクトにフォームのソースを追加する。
2.コンソールアプリケーションのソースに使用するフォームのヘッダをインクルードする。
3.TForm1を呼出すとするとそのコードは、
TForm1* form = new TForm1(0);
form->ShowModal();
delete form;
不明の点は補足から問い合わせてください。
その際は、できるだけ具体的かつ明確にお願いします。
No.1
- 回答日時:
質問の意味がわかりません。
何がしたいのか具体的かつ明確に説明してください。
別に専門的な用語を使う必要はありません。自分のやりたいことを日常の言葉で、ただし自分以外の第三者でも明確に意味がわかるような表現で説明してください。
なお、
単に、「引数で指定された入力ファイルを開き演算した結果を同じく引数で指定された出力ファイルに書き込み保存する」
だけなら、そもそもフォームを作成する必要はありません。
main()関数内で引数を調べてファイルを開いて処理するだけです。
ただし、このプログラムはコンソールで実行することになりますが…。
それともコンソールアプリケーションからフォームを使いたいということなのでしょうか?
補足を願います。
この回答への補足
その通りです。フォームをせっかく完成させたので、これをそのままコンソールアプリケーションで使用するというのが目的です。コンソールから実行したときに「ボタンを押す」、「エディットボックスにテキストを入れる」といった処理をさせたいのですが、main()に書いてもクラスの定義?宣言?がうまくいかず困っています。
補足日時:2006/10/29 23:08お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- C言語・C++・C# c言語の問題です 2 2023/07/21 10:51
- Visual Basic(VBA) Accessフォームで全レコードを指定のExcelのセルへ転送し印刷する方法について 2 2022/09/08 18:23
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
- Chrome(クローム) 入力フォームの履歴を消したい 2 2023/06/29 13:02
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ユーザーフォーム上に現在日時...
-
ExcelVBAのユーザーフォームの...
-
VBAでユーザーフォームを再表示...
-
フォームウィンドウを最前面に...
-
オブジェクト(コントロール)...
-
ACCESSのフォーム、開くんです...
-
コントロールの存在確認
-
Microsoft Formsの「個人情報や...
-
VBA コンボボックスとテキスト...
-
VBAのテキストフォームの折り返...
-
C#でボタンクリックをキャンセル
-
クリックするたびに、フォーム...
-
[ExcelVBA] Application.Dialog...
-
VB.NETでフォームロード中のエ...
-
クリックイベントなのに、2回ク...
-
Hideについて(.NET)
-
エスケープキーを押して、フォ...
-
エクセルのVBAでユーザーフォー...
-
Userformを閉じて開く時、一瞬...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
Form_Load と Form_Activate の...
-
VBAでユーザーフォームを再表示...
-
Microsoft Formsの「個人情報や...
-
クリックイベントなのに、2回ク...
-
ユーザーフォームのテキストボ...
-
ユーザーフォーム上に現在日時...
-
ACCESSのフォーム、開くんです...
-
エクセルのチェックボックスの...
-
エクセルVBAのフォームを最...
-
VB.NETでフォームロード中のエ...
-
EXCEL VBA ユーザーフォームの...
-
VBA(エクセル)のユーザー...
-
【Excel VBA】ユーザフォームを...
-
Hideについて(.NET)
-
(Excel+VBA)ユーザーフォームの...
-
モーダルフォームとモードレス...
-
VBA コンボボックスとテキスト...
-
アクセス2013 フォームが...
おすすめ情報