C++Builder相談室 Part10
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG過去スレ・関連サイトは>>2-5あたり。
0074デフォルトの名無しさん
NGNG> たとえばツリービューの 2 番目の項目にアクセスするには次のようなコードを使います。
> MyTreeNode = TreeView1->Items[1];
と、ありますがコンパイルすると、
[C++ エラー] Unit1.cpp(23): E2034 'TTreeNodes' 型は 'TTreeNode *' 型に変換できない
と、出ます。TreeView1->Items[x]という使い方はできないのでしょうか。
0075デフォルトの名無しさん
NGNGMyTreeNode = (*TreeView1->Items)[1];
ヘルプのミスかな…
0076デフォルトの名無しさん
NGNGヘルプ、
MyTreeNode = TreeView1->Items->Item[1];
じゃないのかい?うちのはBCB5だけど。。。
Items(TTreeNodes)とItem(TTreeNode)は違う。
ややこしいけど、前者はノードの塊を指し、
後者は一個一個のノードを指している。
こんなところがバージョンで変わってるとは思えないんだが。
ていうか、>75のソースで期待通りに動くの?
ものすごいことやっちゃってると思うんだけど。
0077デフォルトの名無しさん
NGNGBCB6のヘルプを確認したところ、>>74になってます。
とんでもない誤記ですな。
当然、>>76が正しいのですよ。>74氏
0078デフォルトの名無しさん
NGNGBCB6 では、>>74 の言っている通りにヘルプには書いてある。
更に BCB6 だと TTreeNodes では演算子 [] がオーバーロードされていて、
Treeview1->Items[1] で TreeNode * が取り出せるようになっている模様。
0080デフォルトの名無しさん
NGNG絡みのミスか?
008177
NGNGTTreeNodes::operator[]( int )があるので
(*TreeView1->Items)[1];
これが使えると。
でも
Treeview1->Items[1];
はだめでしょ。
0082デフォルトの名無しさん
NGNG0083デフォルトの名無しさん
NGNG0084デフォルトの名無しさん
NGNGクリックすると必ずCPUウィンドが出てくるようになってしまいました。
こんなの見てもわからないので出ないようにしたのですが、どうすれば
いいのですか?
0085デフォルトの名無しさん
NGNG再インスト。
0086デフォルトの名無しさん
NGNG2004/07/13 - C++Builder 6 Linker Update
ilink32 version 5.66
大きなオブジェクトをリンクするときにおきるアクセスバイオレーションを修正。
0087デフォルトの名無しさん
NGNG0088デフォルトの名無しさん
NGNGWin32APIのものと、IdGlobal.hppのものと2つあります。
namespaceとか使って、Win32APIにリンクしたい場合にはどうしますか?
0089デフォルトの名無しさん
NGNG0090デフォルトの名無しさん
NGNG::Sleep
^^^^^^^
これって、namespace指定してないように読めるんですが、どうなんでしょ。
0091デフォルトの名無しさん
NGNGグローバル
0092デフォルトの名無しさん
NGNGnamespace を指定されていない識別子はグローバルな名前空間に格納されます。
::Sleep
も形式的には名前空間を指定された識別子です。ただグローバルな名前空間には
名前がありません。
0093デフォルトの名無しさん
NGNG0094デフォルトの名無しさん
NGNGttp://www.drbob42.com/cbuilder/index.htm
2004/05/13 - C++Builder version 9?
0095デフォルトの名無しさん
NGNG0096デフォルトの名無しさん
NGNG0097デフォルトの名無しさん
NGNGソースは?
009876
NGNG勉強になりますた。
0099デフォルトの名無しさん
NGNG/usr/src/linux
にあると思います
0100デフォルトの名無しさん
NGNG改行が反映されるようにMemoに書き加えるにはどうしたらいいですか?
0101デフォルトの名無しさん
NGNG0102デフォルトの名無しさん
NGNG0103376
NGNGエラーです。だけじゃ誰も何も言えん。
0104デフォルトの名無しさん
NGNG0105デフォルトの名無しさん
NGNG0106デフォルトの名無しさん
NGNGバージョン情報のダイアログには仕掛けがある
0107デフォルトの名無しさん
NGNG頻繁に怒るのですけど、解消する方法とか知りませんか?
0108デフォルトの名無しさん
NGNGリセットボタン
0109デフォルトの名無しさん
NGNG0110デフォルトの名無しさん
NGNGお前はさぞ利口なんだろうな
おっと、利口なやつは2ちゃんねるなんかに来ないか 失敬
0111デフォルトの名無しさん
NGNGilink.exeを5.66にしてもエラーメッセージが日本語になる、ってガイシュツ?
0112デフォルトの名無しさん
NGNGどんなメッセージをキャッチすればいいのですか?
0113デフォルトの名無しさん
NGNG現在は1日平均3通くらい
BCBの廃れ具合が良く分かりますね。
0114デフォルトの名無しさん
NGNG0115デフォルトの名無しさん
NGNG登録してあるはずなのにぜんぜんメール来ないぞw
0116デフォルトの名無しさん
NGNGBCBとVC++比べたら圧倒的にBCBの方が楽なのに
なんでVC++がメジャーなのかな???
商用として耐えうるデバイスドライバなんて書いてる人なんて極少数
じゃないの?
0117デフォルトの名無しさん
NGNG0118デフォルトの名無しさん
NGNG.cppファイルだけみても,どこから呼ばれるのか分からなくて
慣れるまで苦労したよ。
C++知らないやつが書いたソースだとさらに最悪。
なんで全てグローバル変数にするのかと小一時間・・・
0119デフォルトの名無しさん
NGNG>.cppファイルだけみても,どこから呼ばれるのか分からなくて
>慣れるまで苦労したよ。
それはVCLを理解してないから。
>C++知らないやつが書いたソースだとさらに最悪。
>なんで全てグローバル変数にするのかと小一時間・・・
それはBCBの問題じゃない。
ただし「COBOLer にいきなりC++やらせるな」と
言いたいなら、激しく同意。
0120デフォルトの名無しさん
NGNG多くない?
0121デフォルトの名無しさん
NGNGイベントハンドラが,.cppでなくて,フォームの中に記述してあるじゃないですか。
.cppと.hppだけを,エディタ(emacs)で追いたいわけなんです。
IDEのエディタも,書くときは . か -> を入力したとたんに使用できるメソッドが
表示されて,書く人には楽でしょうけど,読むにはタグジャンプもなくてつらくて。
(以下愚痴)
今改造させられてるソースが,すべてグローバル変数 & 関数が全て
void hoge(void) の形式なんです。
原作者はCOLOLerでなく,C経験者なんですけどね( ´Д`)
0122デフォルトの名無しさん
NGNGイベントハンドラが,.cppでなくて,フォームの中に記述してあるじゃないですか。
↑意味不明なのですが・・・
0123デフォルトの名無しさん
NGNGイベントハンドラの『定義』です
0124デフォルトの名無しさん
NGNGVC++知らずにいきなりBCBなんだが…
だめ?
0125デフォルトの名無しさん
NGNG別にだめじゃないけど・・・
試しにVC++やってみなよ。
10秒で挫折すること必至!w
0127デフォルトの名無しさん
NGNG0128デフォルトの名無しさん
NGNGSDKならBCBでも同じじゃん
VC++の難しさはappウィザードが吐き出す大量のコードと
doc/viewアーキテクチャだと思うよ
0129デフォルトの名無しさん
NGNG漏れ,ドライバしか扱ったことないからわからんかった
0130デフォルトの名無しさん
NGNGStrutsなんて使えないだろうな。MVCだし。
0131デフォルトの名無しさん
NGNGMFCのDoc/Viewを読み解くには
C++に相当精通した上で、ソフトウェア工学についての知識も
必要になるのでまず無理です。
ほとんどの人、俺もそうだがあまり深く考えずに”こういうもんだ”と
おもっていれば問題ないことが多いよ
0132デフォルトの名無しさん
NGNGBCBではTMainFormのpublicに変数全部置いておけばOK。
0133デフォルトの名無しさん
NGNGスマソ,話そらしてしまって。
逝ってくる。
0134デフォルトの名無しさん
NGNGBCBの場合、良くも悪くもそれで問題ないことが多いですねw
0135デフォルトの名無しさん
NGNGあれをわざわざ苦しみながら使う必要なんて、もうないんだよ。
0136デフォルトの名無しさん
NGNG読む時は Grep & Doxygen。
0137デフォルトの名無しさん
NGNGヘタに素人に作らせると、メンテで泣くことになるかもしれんが
0138デフォルトの名無しさん
NGNGノ
VCも勉強しようとは思っているが
使い慣れたCで、簡単にとりあえず動く物を作れるのはうれしい。
弱点はBCB自体がちょっと不安定な所か。
0139デフォルトの名無しさん
NGNGBCBでUIをポトリペタリ作るってのは少数派なのかな?
0140デフォルトの名無しさん
NGNG0141デフォルトの名無しさん
NGNGHDDも無駄に大容量化してるし、ブロードバンドも普及し、
リムーバブルなメディアも数百円程度の時代にコンパクトな実行ファイルなんて
なんの意味があるの?
0142デフォルトの名無しさん
NGNGTListとかTStringListとかAnsiStringとかあるし。
0143デフォルトの名無しさん
NGNG禿同
組み込みならいざ知らず、PC向けのアプリケーションなら
実行速度に問題がなければサイズなんて何の意味もない
0144デフォルトの名無しさん
NGNGVCLに渡す時に一次オブジェクト生成するから時間かかっちゃうよ?
0145デフォルトの名無しさん
NGNG情報源は?VCLのソースのどの部分みて言ってんの?
生兵法は怪我の元やで、しかし!
0146デフォルトの名無しさん
NGNGAnsiStringのソースはdstring.cppだけど、
そんなもの見なくてもstd::string->const char*->AnsiStringの変換が必要になるから、
AnsiStringの一時オブジェクトが生成されるのは分かるよね?
0147デフォルトの名無しさん
NGNGLStrFromPCharを呼んでるよね。これも余計な時間がかかる原因。
0148デフォルトの名無しさん
NGNGそもそもRAD自体が富豪的プログラミングの典型だからね。
速いプログラムが書きたければBCBなんて使うべきでは無いよ。
0149デフォルトの名無しさん
NGNGテカプレートだから型ごとにコードが膨らんでくし。
0150デフォルトの名無しさん
NGNG0151デフォルトの名無しさん
NGNG0152デフォルトの名無しさん
NGNGnasmでも使ってろよ
0153デフォルトの名無しさん
NGNGそんなに気になるならVRAMに直接書き込めばイイ
0154デフォルトの名無しさん
NGNGはぁ、?VRAM?
なに言ってんの、このボンクラは?
0155デフォルトの名無しさん
NGNG漏れの職場はほぼVC++、漏れも最初は抵抗あったが
慣れてくるとBCBのポトペタ環境なんてどうでもよくなった。
0156デフォルトの名無しさん
NGNG0157デフォルトの名無しさん
NGNG会社ドメインのメルアドでBuilderMLにメールを出すことと
仕事でC++Builderを使うことにどんな因果関係があるの?
0158デフォルトの名無しさん
NGNG大抵質問内容が業務用アプリに関することが多いんじゃない?
〜というものを開発しているのですが・・・とか
0159デフォルトの名無しさん
NGNGノシ
0160デフォルトの名無しさん
NGNG俺もそうだよ。少数派の一人かもしれんが。
組み込み用の処理を、Builderで書いたテスト環境に
放り込むとかよくやるんでね。
>>105
シフト、コントロール両キーを押したままBuilder起動で
スプラッシュが変わるよ。
Builder5では某ジラの絵(数種類あり)になって
おまけに鳴き声まで出るので、最初偶然見たときはPCが
病原菌に感染したかと焦ったな。
0161デフォルトの名無しさん
NGNGBCB5の某ジラは見たことあるが
BCB6は見たことないなぁ。
ちなみにShift+Ctrlでは出なかった。>BCB6
0162デフォルトの名無しさん
NGNGスマソ。BCB6ではShift+Ctrl+Alt起動だったかな?
6は手元にないのでうろ覚え。
0163デフォルトの名無しさん
NGNGあー、ごめん。BCB6もShift+Ctrlでヲケだ。
オレの押すタイミングが悪かっただけだ。
スマン。
あと、BCB6でもバージョン情報で
alt+"gungla"
も生きてる模様。
0164デフォルトの名無しさん
NGNGキーボードのウィンドウにフォーカスを移すことなく、入力イベントだけ受け取るようなプ
ログラムは可能なのでしょうか?
0165デフォルトの名無しさん
NGNG0166デフォルトの名無しさん
NGNGコンポーネントを派生とか組み合わせてキーボードコンポーネントを自作するのがデフォでしょ。
0167デフォルトの名無しさん
NGNGボタンを配置しなくてFormのCanvasにキー描画しないといけないぽいけど。
Win標準のソフトウェアキーボードってそうなってんのかな?
0168デフォルトの名無しさん
NGNGどうしたらいいですか?
ttp://www.geocities.co.jp/SiliconValley/4805/bcbtips/bcbtips002.htm
0169デフォルトの名無しさん
NGNGWINAPIのヘルプ見るとわかるけど、CreateMutexやOpenMutexに使う文字列に円マークは使えない。
Application->ExeName.c_str() を適当な文字列(ユニークな)に変更すればうまくいくと思う。
0170デフォルトの名無しさん
NGNG0171デフォルトの名無しさん
NGNG0172デフォルトの名無しさん
NGNGReleaseMutexは普通はしないし(アプリ終了時に勝手に開放される)、
OpenMutexせずに直接CreateMutexで確かめるのが普通。
そうしないとタイミングによっては二重起動しちゃうから。
0173デフォルトの名無しさん
NGNG0174デフォルトの名無しさん
NGNG画面に貼るだけで良いし、
2度目の起動を止めるだけでなくさらに既に起動しているプログラムをアクティブにしてくれる。
■ このスレッドは過去ログ倉庫に格納されています