C++Builder相談室 Part10
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG過去スレ・関連サイトは>>2-5あたり。
0598デフォルトの名無しさん
NGNGただそれだけのためにスレッドを作るの!?
かなり非効率でしょ…
Timerで直接TStringGridのCanvasに色を塗ったら?
0599デフォルトの名無しさん
NGNGあれは英語しかつかえない専用プログラムになってしまってようだね?
初めて使ったよ。
と言う訳で本当にバグレポートを送れたかどうか怪しいけど
一応出しといた。英語も適当だし上手く行ったか分らんけど。
0600デフォルトの名無しさん
NGNG0601デフォルトの名無しさん
NGNGusing namespace std;
int main()
{
AnsiString a = "a";
return 0;
}
をコマンドラインからコンパイルしたい
bcc32 hoge.cpp
なにをincludeすればイイのですか?
0602デフォルトの名無しさん
NGNGコンソール(VCL使用)用のプロジェクトを作ってみて
それを真似したら?
0603デフォルトの名無しさん
NGNGvcl.hもしくはsystem.hpp
さらにrtl.libをリンクする必要がある。
//includeディレクトリをgrepすれば必要なヘッダはわかるはず。
//そのままdstring.hをインクルードするとsystem.hpp使えと怒られるが(゚∀゚)
0604デフォルトの名無しさん
NGNG追加
iostreamを先にincludeすること
そうしないと
AnsiString str = "hoge";
std::cout << str << std::endl;
でエラーになる
0605デフォルトの名無しさん
NGNGBCB5を使っているのですが、rtl.libがありません。
BCB6ではあるのですか?
0606デフォルトの名無しさん
NGNG6しか持ってないからわからないが./Lib/Releaseか./Lib/Debugに入ってないか?
BCB5じゃなくてBCC5.5.1ってオチだったら知らん
0607本田
NGNG少なくともBCB6と同じディレクトリには見つからない。
>BCB6ではあるのですか?
ある。
0608デフォルトの名無しさん
NGNGあるマシンではググルのページ検索サービスにつながってしまいます。
これはどうしたことでしょう。
0609デフォルトの名無しさん
NGNG0610デフォルトの名無しさん
NGNG0611デフォルトの名無しさん
NGNG0612デフォルトの名無しさん
NGNGHTTPサーバみたいなアプリで、HTML文書をリターンする。
0613デフォルトの名無しさん
NGNG0614デフォルトの名無しさん
NGNGググルのページですが、ググルのIPサーチページみたいな。
XXX.XXX.XXX.XXX ページを探しましたが見つかりませんでした、みたいな。
で、直リンテキストみたいなのが貼ってあって、それをクリックするとHTTPアプリにやっと接続する。
0615デフォルトの名無しさん
NGNGキャプチャしてうぷろだにでもうぷしろよ
0616デフォルトの名無しさん
NGNGふむふむ。
いやもう僕にはさっぱりですな '`,、(´∀`) '`,、
0617デフォルトの名無しさん
NGNG0618デフォルトの名無しさん
NGNG0619デフォルトの名無しさん
NGNG0620いなむらきよし
NGNG0621デフォルトの名無しさん
NGNG0622デフォルトの名無しさん
NGNG0623622
NGNGpingで取れる以上の情報をとる手段を教えて欲しいで津。
0624デフォルトの名無しさん
NGNG0625デフォルトの名無しさん
NGNGってどうやって使うの?
0626デフォルトの名無しさん
NGNG0627608
NGNG>
>URLが正しい場合は、ここから192.168.2.200を開いてみてください。
>"192.168.2.200"を含むページの検索
↑
こんなページが開いてしまいます。
で、リンクをクリックしてやっとHTTPアプリに繋がる。
何ででしょうか。
0628デフォルトの名無しさん
NGNG0629デフォルトの名無しさん
NGNGその入力結果が >>627 でつ。
IEコンポーネントだけでなく、IE本体でも同じ結果でした。
ということは、回避策は無いのか?
0630デフォルトの名無しさん
NGNG0631デフォルトの名無しさん
NGNGbuf[MemoryStream->Size+1] = '\0';
MemoryStream->Read(buf, MemoryStream->Size);
std::string str(buf);
delete[] buf;
0632デフォルトの名無しさん
NGNGAnsiString buf; として、
buf.SetLength(MemoryStream->Size);
MemoryStream->Read(buf.c_str(), MemoryStream->Size);
てのもOKですか?
「buf.c_str()」が一時的なバッファのポインタ返したらアウトだけど。
0633デフォルトの名無しさん
NGNGnewしたくないなら
std::vector<char> buf;
buf.resize(MemoryStream->Size);
MemoryStream->Read(&buf[0], MemoryStream->Size);
AnsiString str(&buf[0], MemoryStream->Size);
0634デフォルトの名無しさん
NGNG○constになってませんが
0635デフォルトの名無しさん
NGNG0636デフォルトの名無しさん
NGNG>std::string str(buf);
または、
>std::string str;
>str.assign(buf);
と書くとき、
このとき、bufの途中にNULL文字が入ってても大丈夫なんですよね?
0637デフォルトの名無しさん
NGNGstd::vector<char> buf;
buf.resize(MemoryStream->Size);
MemoryStream->Read(&buf[0], MemoryStream->Size);
std::string str(buf.begin(), buf.end());
0638デフォルトの名無しさん
NGNGうゎ、そうでしたか。
stringの使い方が分かるようになりました。
0639デフォルトの名無しさん
NGNG0640デフォルトの名無しさん
NGNGされる。
0641デフォルトの名無しさん
NGNGアドレスに変な文字が入っていて検索ページに飛ばされているんじゃないの?
それかIEがおかしいか。
0642デフォルトの名無しさん
NGNG0643デフォルトの名無しさん
NGNG実はIE単体で使用しても同じ現象なのでIEの問題ポイでつ。
ググルのリンクをクリックすると鯖に繋がるので鯖はOKポイでつ。
0644デフォルトの名無しさん
NGNG0645デフォルトの名無しさん
NGNGint firstLine = SendMessage(Memo1->Handle, EM_GETFIRSTVISIBLELINE, 0, 0);
SendMessage(Memo1->Handle, EM_LINESCROLL, 0, targetLine - firstLine);
一発で飛べるメッセージとかあるかもしれないけど、一応これででけた。
0646デフォルトの名無しさん
NGNG0647デフォルトの名無しさん
NGNGなんで?
0648デフォルトの名無しさん
NGNG0649デフォルトの名無しさん
NGNG0650デフォルトの名無しさん
NGNG0651デフォルトの名無しさん
NGNG0652デフォルトの名無しさん
NGNG0653デフォルトの名無しさん
NGNG0654デフォルトの名無しさん
NGNGhttp://216.239.57.104/search?q=cache:ZHmrhhdPVFAJ:member.nifty.ne.jp/h_kova/faq/main.htm+perform+sendmessage+%E9%80%9F%E5%BA%A6&hl=ja&lr=lang_ja&inlang=ja
0655デフォルトの名無しさん
NGNG0656デフォルトの名無しさん
NGNG0657デフォルトの名無しさん
NGNGジャブをおろそかにするボクサーみたいな態度だな
0658デフォルトの名無しさん
NGNGジャブが上手かどうかなんて関係ないね。
勝てばいいのさ。
0659デフォルトの名無しさん
NGNG0660デフォルトの名無しさん
NGNG6.5とか出して欲しいな。
0661デフォルトの名無しさん
NGNGお前じゃ勝てないな
0662デフォルトの名無しさん
NGNGそういうやつが世界戦でアウトボックスに完封されるんだよ。
0663デフォルトの名無しさん
NGNG「それは保存だろ!」と突っ込みたくなるようなアイコンになってしまうんだけど、
うちだけ?開くらしいアイコンってどこかにないかな?
0664デフォルトの名無しさん
NGNG0665デフォルトの名無しさん
NGNG1つのアプリケーションで複数のFormに不特定多数のコンポーネント
を貼り付けているのですが、現在アクティブなFormとフォーカスのある
コンポーネントが分かるよう、色のついた枠をつけたいのですが
良い方法見つかりません。どなたかアドバイスください。
0666デフォルトの名無しさん
NGNG自分の管理しているコンポーネントにフォーカスがきたら色表示。
0667665
NGNGたとえばListViewにフォーカスがきたときにListViewの
周りを2pixの黄色い枠で囲いたい時にTPanelに前後左右
2pix小さいTListView貼り付けてPanelの色を変える
ということですか?
ちなみにOnReturnで色付け、OnExitで色はずしって
感じでしょうか?
0668666
NGNGフォーム来るメッセージハンドラで(イベントハンドらではない)、
フォームが自分に貼り付けられてるコンポーネントを全部見てフォーカスのあるコンポーネントを探す、
なんてことは出来るだろうね。
で、コンポーネントのParentのオブジェクトを見てコンテナパネルだったら枠を書いてやるとか。
もっとスマートな方法思いついた人よろ。
0669666
NGNGコンテナパネルの初期処理で、
コンテナパネル自身に貼られたコンポーネントのOnEnter/OnExitイベントハンドラを設定する。
そのイベントハンドラでコンテナパネル自身のメソッドをコールしてやる、と。
で、この方式の欠点はOnEnterイベントを他に使えないことかな。
0670デフォルトの名無しさん
NGNGみ違反がおきました」
といったメッセージが表示されたときに、xxxxxxアドレスからエラーにソースコードの位置
を知ることは可能でしょうか?
コンパイル時につくったマップファイルから調べるか、デバッグでアドレスを指定するなど
してみましたが、うまくいきませんでした。
0671本田
NGNGWindowXPの64Bit版が遅れてるので、来年後半にずれ込むと思う。
0672デフォルトの名無しさん
NGNGCodeGuardをONにしれ。出てきたログファイルを読めば大抵わかる。
Personalではあいにくと付いてないけど。
0673デフォルトの名無しさん
NGNGつかえね
0674デフォルトの名無しさん
NGNGまあいいやん。
0675デフォルトの名無しさん
NGNG0676デフォルトの名無しさん
NGNG漏れの部署ではVC++しか使うことはない
0677デフォルトの名無しさん
NGNGしたいんだけど、どうすればいいの?
0678デフォルトの名無しさん
NGNG0679デフォルトの名無しさん
NGNG0680デフォルトの名無しさん
NGNGTWriterの必要なメソッドはvirtualになってないし、
ObjectBinaryToTextを参考にObjectBinaryToXMLみたいなのを作る、ぐらいかなあ…
既にあるような気もするけど。
COMオブジェクトにしてしまうのは無しですよね
0681デフォルトの名無しさん
NGNG6・7は何処にいったんでしょうね〜
0682デフォルトの名無しさん
NGNG0683デフォルトの名無しさん
NGNG__interfaceあたりくらいしか思いつかん。
>>673
その代わりにキャストしても元の型がわかる強力なRTTIがあるじゃないか。
0684デフォルトの名無しさん
NGNG6なら今あるけど。
0685デフォルトの名無しさん
NGNGノシ
うちは請負中心の零細で、お客さんも理解があるから、ほとんどのアプリがBCB6Proで開発。
VCLをスタティックリンクにしてあるから、「バイナリがでかいYO!」って言われるくらいかな。
打ち合わせのときに、お客さんが「自分でも直したいからVBかVC++で。」って言ってくることがよくあるけど、
「本当に自分で直す根性ありますかぁ?大変ですよぉ。」って言うと、たいていは尻込みする。
もちろん、ソースコードは渡しているし、わざわざBCBを買ったお客さんもいた。でも、タンスの肥やしになったようだけど(w
0686デフォルトの名無しさん
NGNGうちはちょっと業務が特殊なので、BCBメインです。
客にソースコード込みでアプリケーションを提供するときには(あんまり無いけど)、
「VCでもいいですけど、GUI部分の工数を余分に頂くことになります」
と言っている。
別に水増し請求してる訳じゃなくて、BCBだと安く済むってだけなんだけどね。
0687デフォルトの名無しさん
NGNG>>>673
>その代わりにキャストしても元の型がわかる強力なRTTIがあるじゃないか。
そういう問題じゃない。
VCLで多重継承が使えないのはつらい。
0688685
NGNG> 「VCでもいいですけど、GUI部分の工数を余分に頂くことになります」
> と言っている。
> 別に水増し請求してる訳じゃなくて、BCBだと安く済むってだけなんだけどね。
これ、俺も同じ。(w
そしてよくあるのが、打ち合わせの時に「Excelのような表形式でデータ入力がしたい。」と言われる。
だから、BCB5のデモ版でTStrinigGridを試してからBCBに乗り換えた。
あと、ADOExpressが使えるから、AccessのDBをデータファイルとして使って、レポートが定義してある
別のAccessDBにテーブルをエクスポートして帳票印刷したりしたこともある。
その前はGUIをVB、内部処理をVC++のDLLで作ったり、MSHFlexGridをインポートしていたんだけど、
デバッグが面倒すぎた。特に、GUIをVBで作っていたときはIDEごとコケたりするし。
0689デフォルトの名無しさん
NGNG慣れだろ?
0690デフォルトの名無しさん
NGNGつか、BCBが用意しているコンポーネントは業務でそのまま使えることは
極めて稀
結局VC使うのとほぼ同じ
0691デフォルトの名無しさん
NGNG0692デフォルトの名無しさん
NGNG>TStringGridでもExcelのように入力を期待されると結局自前で作るしかないし
難しくなりそうになったらVCにしてる。
BCB使うときは基本的にUIがポトペタですむときが多いね、中身のロジックは
純粋にC++で作るのでVCとかBCBとか関係ない。
で、VCLを自分ではほとんど作らないんだけど
>VCLで多重継承が使えないのはつらい。
この辺はどうなんでしょうか? VCLを多重継承するときってどんなとき?
0693デフォルトの名無しさん
NGNG0694デフォルトの名無しさん
NGNGDelphi3でinterface,Delphi4でimplementsと、Delphi側がその後委譲多重継承とでも言うべき
C++とは噛み合わない独自の多重継承の方法を作り上げてしまった
で、C++Builder側がおいてけぼりをくらってる、と
0695デフォルトの名無しさん
NGNG__interfaceって何だろうと思ったら、
#define __interface class
だったw
> 純粋仮想関数だけを持ち,データメンバーを持たないクラスがある場合,
> C++Builder のコンパイラは,これを Object Pascal の
> インターフェースに対応するクラスとして認識します。
> このように,VCL スタイルクラスを作成して,多重継承を使用することが可能です,
こんな機能もあったのね。まあ漏れがお世話になることは無いかもしれないけど。
0696デフォルトの名無しさん
NGNG0697デフォルトの名無しさん
NGNGナニが?
■ このスレッドは過去ログ倉庫に格納されています