トップページ⇒tech
1001コメント335KB

くだすれC++Builder(超初心者用)その2

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/04/06(木) 16:33:24
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
C++Builder使いが優しくコメントを返しますが、
お礼はC++Builderの布教と初心者の救済をお願いします。

Borland Home Page
http://www.borland.co.jp/


<前スレ>
くだすれC++Builder(超初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1117225464/l50


<兄弟スレ>
くだすれDelphi(超初心者用)その31
http://pc8.2ch.net/test/read.cgi/tech/1142594051/l50
0598デフォルトの名無しさん2006/09/23(土) 01:05:35
InterBaseのバージョンも違うのね。(通常版は6.5)
0599デフォルトの名無しさん2006/09/23(土) 01:10:11
>>597
1/4/5部と2/3部に分冊すれば使いやすいのになぁ‥‥
0600デフォルトの名無しさん2006/09/23(土) 17:03:10
hello worldすら出力できなくて挫折した
0601デフォルトの名無しさん2006/09/24(日) 23:55:30
自分が調べたいことをパラパラと探せないし、
かといって、ろくなこと書いてないし、サンプルもないし。
書店で本をみればロクなこと書いてないワリにめちゃめちゃ高いし、
やっぱVCのほうがいいっすよ。
本なんて買わなくても周りに知ってる人がいくらでもいるし。
BCBはね、DELPHIやってる人のほうが詳しかったりして。
なんで今更PASCALやらDELPHI固めのGUI操作を覚えねばならぬ。
0602デフォルトの名無しさん2006/09/25(月) 00:03:03
>>601
よそでやれボケ
0603デフォルトの名無しさん2006/09/25(月) 08:18:11
>>601
禿道
0604デフォルトの名無しさん2006/09/25(月) 08:18:35
予言するがおまえにはVCも無理だろうな
0605デフォルトの名無しさん2006/09/25(月) 08:25:05
いや、VC はもう使って10年近く飯を食ってるが
0606デフォルトの名無しさん2006/09/25(月) 09:35:51
じゃあ浮気なんかせずそのまま食ってきなさい。
人生は短い。
0607デフォルトの名無しさん2006/09/25(月) 09:43:19
デジタル土方暦10年。一生うだつの上がらない人生。
0608デフォルトの名無しさん2006/09/25(月) 20:39:54
悲惨だな、BCB厨の人生。
0609デフォルトの名無しさん2006/09/25(月) 20:59:22
>>608
そうきたかw
0610デフォルトの名無しさん2006/09/25(月) 21:05:08
悲惨すぎ、BCB厨の人生。
0611デフォルトの名無しさん2006/09/25(月) 21:30:33
プログラミングで飯を食ってる時点でお前ら似たようなもんだろw

俺? 俺は趣味でプログラミングやってる開業医だが何か?w
0612デフォルトの名無しさん2006/09/25(月) 22:09:53
ひまな医者だな・・・
0613デフォルトの名無しさん2006/09/25(月) 22:10:24
BCB で飯食えるの?
0614デフォルトの名無しさん2006/09/25(月) 22:50:43
601を書いたものですが反応が面白いですな。
実際にはBCB使ったことが無くて想像で書いてみましたが何か?
0615デフォルトの名無しさん2006/09/25(月) 22:52:07
あと、正直に白状するとVCも使ったことありましぇん。
面白いねーおまいら。
0616デフォルトの名無しさん2006/09/25(月) 23:01:18
完全に雑魚キャラのセリフじゃねーか。
そんなんでいいのかお前。
0617デフォルトの名無しさん2006/09/26(火) 01:03:38
最初は釣りも煽りもこんなもんじゃね?
自爆しながら成長していくんだよ。
0618デフォルトの名無しさん2006/09/26(火) 02:20:03
壮絶に釣りだったわけか・・・和良
0619デフォルトの名無しさん2006/09/27(水) 11:31:41
10でたんか?
0620デフォルトの名無しさん2006/09/27(水) 12:21:57
10で短歌?
0621デフォルトの名無しさん2006/09/27(水) 14:03:25
10で炭化?
0622デフォルトの名無しさん2006/09/27(水) 21:56:22
10で単価?
0623デフォルトの名無しさん2006/09/27(水) 22:28:45
10で簡単??
0624デフォルトの名無しさん2006/09/27(水) 22:38:12
あまり期待はしないで質問するが、
DelphiのAssign(うんちゃら)は、
BCBでは単にNULLを見ればいいの?
例えばねぇ......、やっぱやめたー。
ここの住人だと、ろくな答え返ってこないね。
0625デフォルトの名無しさん2006/09/27(水) 23:23:04
そう
0626デフォルトの名無しさん2006/09/28(木) 02:00:22
>>624
こいつはDelphiスレでも相手にしてもらえないんだろうなw
0627デフォルトの名無しさん2006/09/28(木) 19:49:38
おまえと一緒だな
0628デフォルトの名無しさん2006/09/29(金) 03:13:44
>ここの住人だと、ろくな答え返ってこないね。
>>626みたいなヤシのこと言ってんだろうよwwwwwwwwwwwww
>>624
俺は無視してるが。
やるとすれば、NULLを見るのではなく、
コールバックなどで値が変化したかで判断するが。
0629デフォルトの名無しさん2006/09/29(金) 03:27:16
ほんとにろくな答え返ってこないや。
0630デフォルトの名無しさん2006/09/29(金) 03:42:52
>ほんとにろくな答え返ってこない
それがBor信者クオリティじゃね
0631デフォルトの名無しさん2006/09/29(金) 09:59:56
つうか、>624みたいな書き方したらどこのスレでもまともな答えは返ってこんと思うが。
0632デフォルトの名無しさん2006/09/29(金) 11:29:07
>>624は荒らしだろ
0633デフォルトの名無しさん2006/09/29(金) 18:32:39
\               �U         /
  \             �U        /
             / ̄ ̄ ヽ,
            /        ',      /     _/\/\/\/|_
    \    ノ//, {0}  /¨`ヽ {0} ,ミヽ    /     \          /
     \ / く l   ヽ._.ノ   ', ゝ \       <   バーカ!  >
     / /⌒ リ   `ー'′   ' ⌒\ \    /          \
     (   ̄ ̄⌒          ⌒ ̄ _)    ̄|/\/\/\/ ̄
      ` ̄ ̄`ヽ           /´ ̄
           |            |  
  −−− ‐   ノ           |
          /            ノ        −−−−
         /           ∠_
  −−   |    f\      ノ     ̄`丶.
        |    |  ヽ__ノー─-- 、_   )    − _
.        |  |            /  /
         | |          ,'  /
    /  /  ノ           |   ,'    \
      /   /             |  /      \
   /_ノ /              ,ノ 〈           \
    (  〈              ヽ.__ \        \
     ヽ._>              \__)
0634デフォルトの名無しさん2006/09/29(金) 21:13:04
\               �U         /
  \             �U        /
             / ̄ ̄ ヽ,
            /        ',      /     _/\/\/\/|_
    \    ノ//, {e}  /¨`ヽ {e} ,ミヽ    /     \          /
     \ / く l   ヽ._.ノ   ', ゝ \       <   アホー!  >
     / /⌒ リ   `ー'′   ' ⌒\ \    /          \
     (   ̄ ̄⌒          ⌒ ̄ _)    ̄|/\/\/\/ ̄
      ` ̄ ̄`ヽ           /´ ̄
           |            |  
  −−− ‐   ノ           |
          /            ノ        −−−−
         /           ∠_
  −−   |    f\      ノ     ̄`丶.
        |    |  ヽ__ノー─-- 、_   )    − _
.        |  |            /  /
         | |          ,'  /
    /  /  ノ           |   ,'    \
      /   /             |  /      \
   /_ノ /              ,ノ 〈           \
    (  〈              ヽ.__ \        \
     ヽ._>              \__)
0635デフォルトの名無しさん2006/09/30(土) 00:03:40
>>633
>>634
初心者ですみませんが、
このAAの何が面白いのか教えてください。
あと、C++Builderのどこがいいのかもついでに。
0636デフォルトの名無しさん2006/09/30(土) 00:41:56
>>635
趣旨は違うが、>>1が言うとおりの本当に低レベルでくだらない質問だ。
くだらなすぎるから帰れ!
0637デフォルトの名無しさん2006/09/30(土) 23:22:04
>>636
どっちに過剰反応?
AA?
BCBイジメ?
どちらにしろキモイよお前。
0638デフォルトの名無しさん2006/09/30(土) 23:23:34
>>637 ごちゃごちゃ言うなら、>>635 に回答してみろよ
06396372006/10/01(日) 01:09:59
>>638
スレ違い
0640デフォルトの名無しさん2006/10/01(日) 01:13:25
>>633-637 と639
すれ違いウザ杉www
0641デフォルトの名無しさん2006/10/01(日) 03:37:35
負け戦でage続けた639の完敗だな。
06426372006/10/01(日) 22:39:26
キモイに過剰反応?wwwww
0643デフォルトの名無しさん2006/10/01(日) 23:57:22
637キモイ
0644デフォルトの名無しさん2006/10/02(月) 08:29:54
>>637
>このAAの何が面白いのか教えてください。
別に面白くないと思います

>あと、C++Builderのどこがいいのかもついでに。
別に良いところは無いと思います
0645デフォルトの名無しさん2006/10/02(月) 15:28:53
>>637ってVB使ってる厨房とみた。
0646デフォルトの名無しさん2006/10/02(月) 16:38:30
プロジェクトファイルやソースをデスクトップからノートPCに一式コピーしてコンパイルしたのですが
遅すぎて話になりません。10分以上かかっています。ディスクアクセスもしていないようです。
原因は何でしょうか?
0647デフォルトの名無しさん2006/10/02(月) 16:43:57
int__64ってどこへ行っちゃったの?
古いソース使おうと思ったら…
0648デフォルトの名無しさん2006/10/02(月) 16:49:09
__int64のことですか
06496472006/10/02(月) 17:43:27
>>648
逝ってきます

てか、この古いソースって出元はなんなんだ?
0650デフォルトの名無しさん2006/10/02(月) 18:17:55
>>646
ノートPCの環境は?
BCBのバージョンは?
06516352006/10/04(水) 01:20:29
なんか、637のせいで酷い言われようだな。欝だ。
0652デフォルトの名無しさん2006/10/04(水) 09:36:02
>>651
お前もキモイよ
0653デフォルトの名無しさん2006/10/04(水) 10:10:58
まだ粘着してるw
0654デフォルトの名無しさん2006/10/04(水) 10:20:19
粘着してる奴は朝鮮人だろ。日本人のメンタリティではないな。
0655デフォルトの名無しさん2006/10/04(水) 13:00:00
新規作成でアプリケーションを選択して、すぐに全て保存でP1.cppとP1.bprとしました。
一旦閉じた後、プロジェクトを開いて実行すると

リンカエラー 外部シンボル'Form1'が未解決(C:\~が参照)
リンカエラー 外部シンボル'TForm1::'が未解決(C:\~が参照)

と出て実行できません。どうすればよいでしょうか。
0656デフォルトの名無しさん2006/10/04(水) 13:10:09
>>655
P1.hみてみ。TForm1の名前空間はちゃんと定義されているか?

Form1 は確かextern TForm1 *Form1; とかになっているから、
名前空間の問題が解決されればコンパイルできるはずだ。
0657デフォルトの名無しさん2006/10/04(水) 13:17:41
unit1.cpp を P1.cpp で保存したものが、P1.bpr の保存の際に生成される P1.cpp で
上書きされてるんじゃないかな。

unit1.cpp を変名しないか、P1 以外の名での保存でOKかと。
0658デフォルトの名無しさん2006/10/04(水) 13:42:33
>656
すいません。名前空間の定義の方法がわかりません。

>657
ありがとうございます。P1一式の他にU1.cpp h dfm objが生成されエラーは消えました。

デフォルトでUnit1~と保存されるものとProject1~と保存されるcppは両方とも必要ということなのでしょうか。
他のアプリケーションと区別しやすくするために変名したかったのですが、ユニット用の名前とプロジェクト用の名前をわければいいのですね。

ところで>656さんの仰られた方法で解決した場合、ユニット用のcppは無いままになってしまうと思うのですが、
これは名前空間を定義しているのがU1.cppと言うことですか?
0659デフォルトの名無しさん2006/10/04(水) 13:51:11
名前空間はhで定義されてるよ。
まあ>>657さんの方法が簡単で良いかと。
0660デフォルトの名無しさん2006/10/04(水) 15:33:00
>>657
>unit1.cpp を P1.cpp で保存したものが、P1.bpr の保存の際に生成される P1.cpp で
>上書きされてるんじゃないかな。
これがビンゴ
だから名前空間をどうこうして解決する問題じゃない

>>658
>デフォルトでUnit1~と保存されるものとProject1~と保存されるcppは両方とも必要ということなのでしょうか。
"Project1"はアプリケーション
”Unit1"はフォーム
別のもの
1つのアプリケーションは複数のフォームを持つこともできるでしょ
0661デフォルトの名無しさん2006/10/04(水) 17:05:11
まっさらなフォームを二つ作ってfsMDIFormとfsMDIChildで親フォーム子フォームにしたのですが、
子フォームのサイズがオブジェクトインスペクタのものが反映されずに、実行時に変更されてしまいます。

子フォームのサイズを指定するにはどうすればいいでしょうか?
0662デフォルトの名無しさん2006/10/04(水) 21:55:42
俺なら、あえて子フォームにしない。
MDIにする意味がないかぎりは。
0663デフォルトの名無しさん2006/10/04(水) 23:26:33
>>661
子フォームのTop, Left, Width, Heightを設定する
いっぺんに済ますにはBoundsRectを設定する
0664デフォルトの名無しさん2006/10/04(水) 23:49:34
↑書き忘れた
当然、子フォームを表示するときね
0665デフォルトの名無しさん2006/10/05(木) 00:45:27
やっぱBCB使えねぇな。
0666デフォルトの名無しさん2006/10/05(木) 08:50:09
>>665
突然どうした?
発作か?
0667デフォルトの名無しさん2006/10/05(木) 09:31:25
恐らく朝鮮人がファビョったんでしょう。
0668デフォルトの名無しさん2006/10/05(木) 14:23:20
>665は日本語が不自由なだけだよ。
本当は、「私は馬鹿なのでBCBを使いこなすことができません。」と言いたかったんだよ。
0669デフォルトの名無しさん2006/10/05(木) 14:25:56
つ スルー力 ttp://slashdot.jp/articles/06/10/05/0351233.shtml

0670デフォルトの名無しさん2006/10/05(木) 14:26:44
日本語喋れないんなら祖国に帰れよ>>665
0671デフォルトの名無しさん2006/10/05(木) 14:33:07
>>666-670 Except 669
スルー頼むよ。お願いだから。
0672デフォルトの名無しさん2006/10/05(木) 15:16:30
>>671
>671
06736652006/10/05(木) 23:54:03
正直にカミングアウトします
私は朝鮮人です。日本語スコシです。
私は馬鹿なのでBCBを使いこなすことができません。
あと、ファビョってます。

でもBCBマジで使えねぇー。
0674デフォルトの名無しさん2006/10/06(金) 11:15:58
仕事でいきなりちょっとしたアプリをBCB6で作るようにいわれたVC系初心者です。
CheckListBoxを使ってるんですが、CheckBoxのように文字列のクリックでチェック状態を切り替えたいのですが、
どうすればいいでしょうか?
なにもしなければ、文字列のクリックではその行が選択状態(Selected)になるだけなので困ってます。
私のつたない頭では、OnClickでSelectedされている行のCheckedを切り替える方法くらいしか思いつきません。
そうするとチェックボックス自体をクリックしたときに、チェック状態の切り替えが2回行われ元に戻ってしまいます。
0675デフォルトの名無しさん2006/10/06(金) 12:38:51
エレガントではないかもしんないけども OnClick と OnClickCheck の両方に

CheckListBox->Checked[CheckListBox->ItemIndex] = 1 - CheckListBox->Checked[CheckListBox->ItemIndex];

なんてのを置くけば、とりあえず、希望の動作になるような気がする。

OnClick と OnClickCheck は飛んでくる順序が決まってる(かもしれない)から
それを利用する手もあり。
0676デフォルトの名無しさん2006/10/06(金) 13:35:48
>>674
とりあえず弥縫策

//MouseUpイベントで
int n = CheckListBox1->ItemAtPos( TPoint(X,Y), true );
if ( n >= 0 && X > 16 )
 CheckListBox1->Checked[n] = !CheckListBox1->Checked[n];

チェックボックスの幅はあてずっぽう
0677デフォルトの名無しさん2006/10/06(金) 13:37:40
↑あ、MouseDownだった
どっちでも大差ないけど
06786742006/10/06(金) 14:39:19
>675,676
ご教授ありがとうございます。
>675のそのままのコーディングで思い通りの動作ができたんで、これを使わせてもらいました。
たまにクリックが効かなかったり、チェックマークが点滅したりしますが、部署内で使うツールなんで問題ないことにします。
0679デフォルトの名無しさん2006/10/06(金) 15:07:47
>たまにクリックが効かなかったり、チェックマークが点滅したりしますが、
それが出ないようにしてあるのに>>676
0680デフォルトの名無しさん2006/10/06(金) 20:11:30
テケトウでOK ってことだろ
0681デフォルトの名無しさん2006/10/07(土) 16:44:39
> int n = CheckListBox1->ItemAtPos( TPoint(X,Y), true );

座標に依存しないからこっちのほうが安全かもね。
int i = CheckListBox1->ItemIndex;

0682デフォルトの名無しさん2006/10/07(土) 16:52:14
あ、なんかウソ書いた。ゴメソ
0683デフォルトの名無しさん2006/10/08(日) 00:53:12
Turbo C++に移らないのか?
0684デフォルトの名無しさん2006/10/08(日) 01:58:32
>>681
マウスクリックを拾うときは座標に基づかないとダメだよって話なのね、もともと>>676
0685デフォルトの名無しさん2006/10/08(日) 03:05:57
>>684
うん。
一応、CheckListBox1MouseDownイベントの引数で、int Xが入ってくるから
コード的には
int i = CheckListBox1->ItemIndex;
で問題ないと思う。
「座標に依存しないから〜」って発言が嘘。
0686デフォルトの名無しさん2006/10/08(日) 03:29:41
あのさー、CheckListBoxで項目のない余白部分をクリックしたらどうなる?
分かる?
わかんなきゃ、実際に試してみな

マウスクリック拾うときはCheckListBox::ItemIndexじゃダメなの
項目をクリックしてるのかどうか判定しないとダメなの
0687デフォルトの名無しさん2006/10/08(日) 04:18:06
あーなるほど。
リスト一番下の余白をクリックすると
青くなってるところのcheked状態が変わっちゃう。

ヘルプより
> ItemIndex プロパティは,リストボックスの項目リスト内で選択した項目の順番を表す数です。

納得です。^^;
0688デフォルトの名無しさん2006/10/10(火) 14:29:33
通常はコンソールアプリとして動作して、引数にオプション入れて起動したときに
フォーム作成するようなアプリを、1つの実行ファイルで実現したいんですけど、
どのような方法があるでしょうか?
0689デフォルトの名無しさん2006/10/10(火) 16:38:05
コンソールアプリからフォームを生成表示することは普通に出来る
ただそれだとフォームを表示している間、親プロセスとしての
コンソールアプリも生きてるからコンソールは表示され続ける

それを回避したかったら実行ファイルを別にするしかないだろ、多分
0690デフォルトの名無しさん2006/10/10(火) 23:36:18
ボタンを押して、hello を表示させることはできました。
今度は、アプリケーションを立ち上げたら、hello を表示させたいのですが、
メイン関数みたいなのはどのように書くのでしょうか。

__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
    ShowMessage("hello");
}
この中に、ShowMessage("hello");書くとhelloが表示されました。
これがメイン関数みたいに考えれば良いでしょうか。
よろしくお願いします。
0691デフォルトの名無しさん2006/10/10(火) 23:46:01
>>690
意味不明
何がしたいのかもっと具体的かつ正確に質問すべし


>これがメイン関数みたいに考えれば良いでしょうか。
ダメです。Windowsアプリケーションの場合、メイン関数はWinMainとして別に存在します
0692デフォルトの名無しさん2006/10/10(火) 23:56:53
>>691
お返事ありがとうございます。

Project1.cpp
Unit1.cpp
あると思うんですが、ボタンを押してhelloが表示されるようにするときは
Unit1.cppの中に、ボタンのイベントを書いて表示されるようにできました。

コンパイルしたら、exeファイルできると思うんですが、
クリックしたら、helloが表示されるようにしたいです。
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
イベントが起こったら→実行
ではなくて
アプリを立ち上げたら→実行
っていうことをしたいです。
0693デフォルトの名無しさん2006/10/11(水) 00:00:25
>>692
すみません。
意味の無いコード書いてしまいました。
0694デフォルトの名無しさん2006/10/11(水) 00:06:11
それならフォームのOnShowイベントでShowMessage()すればよし

いったいそれに何の意味があるのか正直分からんが
0695デフォルトの名無しさん2006/10/11(水) 00:20:39
__fastcall TForm1::TForm1(TComponent* Owner): TForm(Owner)
{
       ShowMessage("TForm1");
}
void __fastcall TForm1::FormShow(TObject *Sender)
{
       ShowMessage("FormShow");
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
       ShowMessage("FormCreate");
}
void __fastcall TForm1::FormPaint(TObject *Sender)
{
       ShowMessage("FormPaint");
} //こういうのを書けばイベントの発生順序の勉強になるかな?
0696デフォルトの名無しさん2006/10/11(水) 00:20:57
>>694
OnShowイベント調べてみます。

初心者なので、いろいろなサンプルを動かしてみている
ところなのですが、イベントが起こると実行されるというサンプル
しか見かけませんでした。

それで、exeファイルをクリックしたら実行
っていうふうにするにはどうすればよいのかと疑問に思いまして。
たとえば、exeファイルクリックしたらはじめに設定ファイルを
必ず読みに行くとか、など考えられるかもです。
0697デフォルトの名無しさん2006/10/11(水) 00:26:34
>>695
コードありがとうございます。
早速動かして勉強します。
■ このスレッドは過去ログ倉庫に格納されています