- 1 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 09:06:16 ]
- このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。 C++Builder使いが優しくコメントを返しますが、 お礼はC++Builderの布教と初心者の救済をお願いします。 Embarcadero Home Page www.codegear.com/jp/ <過去スレ> くだすれC++Builder(超初心者用) pc8.2ch.net/test/read.cgi/tech/1117225464/l50 くだすれC++Builder(超初心者用)その2 pc10.2ch.net/test/read.cgi/tech/1144308804/l50 くだすれC++Builder(超初心者用)その3 pc11.2ch.net/test/read.cgi/tech/1171219191/ <兄妹スレ> くだすれDelphi(超初心者用)その50 pc12.2ch.net/test/read.cgi/tech/1246340765/l50
- 827 名前:デフォルトの名無しさん mailto:sage [2011/08/24(水) 15:57:39.79 ]
- おそらくできない。
つ ttp://docwiki.embarcadero.com/RADStudio/ja/Pragma
- 828 名前:デフォルトの名無しさん mailto:sage [2011/08/24(水) 16:03:16.21 ]
- docwiki.embarcadero.com/RADStudio/ja/Pragma_option
#pragma option で使用できないオプションは以下のとおりです。 のところに -Ifilename
- 829 名前:デフォルトの名無しさん mailto:sage [2011/08/24(水) 16:22:12.53 ]
- >>827,828
有り難うございます。 すっぱり諦めます。
- 830 名前:デフォルトの名無しさん mailto:sage [2011/08/27(土) 14:02:57.71 ]
- ビルダーで、計算した計算結果を
データ入力値や計算結果・図示などの 印刷を行いたいのですが、 ページは数ページから数十ページ程度の出力となりうるもので ビルダーでするにはどのコンポーネントをつかう必要が あるのでしょうか? QuickReportを検索したのですが、 フリーであればよいのですが、 有償問わず教えてもらえたらと。
- 831 名前:デフォルトの名無しさん mailto:sage [2011/08/28(日) 00:13:46.14 ]
- csvファイルにしてOpenOfficeで読み込んじゃったり
- 832 名前:デフォルトの名無しさん mailto:sage [2011/08/28(日) 00:52:22.10 ]
- FastReportsかQuickReportsだろ
- 833 名前:デフォルトの名無しさん mailto:sage [2011/09/09(金) 16:50:07.99 ]
- いまさら、BCB5update1 つかってます。
void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString str1 = "test1"; AnsiString str2 = Caption; AnsiString dummy1; AnsiString dummy2; AnsiString dummy3; AnsiString dummy4; #if 1 AnsiString tmp = (str1.Length() ? str1:Caption );//EAccessViolation #else AnsiString tmp = (str1.Length() ? str1:str2 );//OK #endif } ↑で、EAccessViolation が発生するのは、なぜなんだろ? コンパイラが腐ってるという噂もありつつ...
- 834 名前:デフォルトの名無しさん mailto:sage [2011/09/09(金) 18:57:56.44 ]
- 確かに、その辺のバージョンで、?:演算子で
?の右(どちらか)にデストラクタが必要なオブジェクトを置いたとき 変なコードを吐いたのを覚えてる。 危険と認識したので、俺的には ?の右に置くものは組み込み型のみで、かつ2つの型を統一にするようにしている。
- 835 名前:デフォルトの名無しさん mailto:sage [2011/09/09(金) 19:01:09.08 ]
- 一応。
暗黙の型変換とデストラクタとで どちらが原因でバグにぶつかるのか深く追求しなかったから、 両方を避けるようにしてる、ってこと。 特にコンストラクタを介する暗黙の型変換は確実にとぶだろうと。
- 836 名前:デフォルトの名無しさん mailto:sage [2011/09/10(土) 05:22:23.39 ]
- BCB6 でも再現するがな
さすがに XE2 では正しく動いた。テンポラリのオブジェクトを適切に破棄しておる >コンパイラが腐ってるという噂もありつつ... それが正解
- 837 名前:833 mailto:sage [2011/09/10(土) 19:35:16.92 ]
- はぅ、やはりそうなのか...
マシン語がよめれば、確信がもてたんだろけど、 よめないので、吐かれたコードが怪しいとおもいつつ、確信がもてなかただ やっぱ、最後はマシン語よめないとなぁ...勉強しろよ>自分 if文に書き換えりゃいいだけだから、まぁ、大した話ではないんだけど、 失った時間が... ↑のは、dummy をはさんでるから、当該文で、例外がおきるけど、 スタックの状況によっては、全然離れたところが壊されて、 意味不明の動作になるから、けっこうたちがわるい...
- 838 名前:デフォルトの名無しさん mailto:sage [2011/09/10(土) 19:55:35.09 ]
- 機械語読めないならCとかC++とか使わないほうがいいよ。MSのドットネットとか使ったほうが安全だと思う。その例だとどうみたってコンパイラのバグだとしか
思えない。ただ、バグを回避するコーディングもテクだとは思うが。
- 839 名前:デフォルトの名無しさん mailto:sage [2011/09/11(日) 10:18:11.84 ]
- いまどき機械語読める奴なんていねえよ。
8086の時代じゃあるまいし、バカかよ。 32bitのあのやたら長いバイナリを読める奴なんいるんかよ。 アセンブラ読めれば十分だろ、阿呆。
- 840 名前:デフォルトの名無しさん mailto:sage [2011/09/11(日) 10:31:35.14 ]
- ナニを切れてるんだか。デバッガの逆アセを読めるかどうかを言ってるんだろ、たぶん。
「C3がRETだ」とかそういうレベルで機械語が読めるとでも思ったのか??コンパイラが 吐くコードがイメージできないと辛いってことだと思うが。
- 841 名前:デフォルトの名無しさん mailto:sage [2011/09/11(日) 13:34:30.72 ]
- 機械語
e-words.jp/w/E6A99FE6A2B0E8AA9E.html マイクロプロセッサが直接解釈・実行できる言語。数字の列で表現され、人間が簡単に理解できるような形式にはなっていない。
- 842 名前:デフォルトの名無しさん mailto:sage [2011/09/12(月) 06:25:03.34 ]
- bpをpush/popする意味はなんですか?
- 843 名前:デフォルトの名無しさん mailto:sage [2011/09/12(月) 12:23:43.92 ]
- bpをポイントとして使ってんじゃね
- 844 名前:デフォルトの名無しさん mailto:sage [2011/09/12(月) 20:42:14.38 ]
- (E)BPは普通その関数の仮引数とローカル変数のスタック上の基準位置を示すのに使う。
- 845 名前:833 mailto:sage [2011/09/17(土) 21:24:46.26 ]
- ありゃ?私のがもとでなんか険悪?
ちなみに私も、アセンブラのつもりでマシン語とつかてた
- 846 名前:デフォルトの名無しさん mailto:sage [2011/09/17(土) 21:27:26.21 ]
- という話はおいておいて。本題
また、BCB5update1 でのお話 //--------------------------------------------------------------------------- class TTest1 { protected: #if 1 AnsiString __fastcall GetTest(){return GetTest(1);}//<== E2247 アクセスできない #else AnsiString __fastcall GetTest(){return "1";}//<== OK #endif public: __property AnsiString Test ={read=GetTest}; AnsiString __fastcall GetTest(int x){return AnsiString(x);} }; //--------------------------------------------------------------------------- class TTest2 { private: TTest1 * Test1; protected: AnsiString __fastcall GetTest(){return Test1->Test;} public: __property AnsiString Test ={read=GetTest}; }; //--------------------------------------------------------------------------- これで、コンパイルエラーが出るのはなぜなんでしょ?
- 847 名前:デフォルトの名無しさん [2011/10/10(月) 15:44:24.19 ]
- C++builderってdelphiみたいにポインタ使わずにプログラミングできる?
- 848 名前:デフォルトの名無しさん mailto:sage [2011/10/10(月) 15:48:15.92 ]
- コンポーネント(TObjectからの派生)がポインタをフル活用しているから難しいんじゃないか?
- 849 名前:デフォルトの名無しさん mailto:sage [2011/10/10(月) 16:30:47.92 ]
- Delphiはクラス型変数が実際にはポインタであって、それを構文上ポインタとして見せないというだけだからなぁ。
- 850 名前:デフォルトの名無しさん mailto:sage [2011/10/10(月) 19:51:01.56 ]
- string ^ b = a; みたいのだったけか…一応 pascal でもポインタ使えたような記憶がある…
あまり使わないからよく覚えてないし
- 851 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 15:22:19.51 ]
- Delphiがベースなせいで
C++なら参照で済むところまでポインタ使ってる
- 852 名前:デフォルトの名無しさん [2011/10/20(木) 17:27:05.35 ]
- WM_MOUSEWHEELイベントでマウスホイールを取ってるんだけど
StringGridにフォーカスがあるとWM_MOUSEWHEELが入ってこなくなるので StringGridのMouseWheelを無視してWM_MOUSEWHEELにイベントが入ってくるようにする方法を教えてください
- 853 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 17:36:51.16 ]
- StringGridをいじってメッセージを転送するのじゃ
- 854 名前:デフォルトの名無しさん [2011/10/20(木) 17:50:10.42 ]
- いやそもそもStringGridが受け取らないようにしたい
Enabledをfalseにする如くに。 しかし、グリッド操作もするのでそれはできない
- 855 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 18:06:40.77 ]
- ホイールを破壊する
- 856 名前:デフォルトの名無しさん [2011/10/20(木) 18:26:34.41 ]
- きえろぶっとばされんうちにな
- 857 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 20:55:25.38 ]
- うん
- 858 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 19:07:24.72 ]
- プログラムがWM_MOUSEWHEELを受け取ったら
マウス位置がStringGrid内かを判断して StringGrid内だったら、処理したい関数にメッセージを転送すればいい。 これはわりと普通に行われている処理で ぐぐれば、いくらでも例が出てくる。
- 859 名前:デフォルトの名無しさん mailto:sage [2011/10/24(月) 06:37:15.09 ]
- VCLのTObjectListってC++でテンプレートで使えないんでしょうか?
std::vector使えばテンプレートでキャストしなくてもいいですが、 VCLで統一したくて、でもTObjectListだとキャストいぱーいでいやーんです。。。
- 860 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 14:16:12.70 ]
- マルチスレッドでクリティカルセクションの使い方がわかりません。
グローバルでcs1,cs2を,Form1のpublicにchar buf[20]を宣言して、 Form1にEdit1,Edit2,Button1を貼って実行すると、競合させたbufの内容が Edit2側にゴミとして表示されてしまいます。 ttp://ideone.com/Tk5g9 下の2つがスレッド側です。 使い方が根本的に違うのでしょうか。
- 861 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 14:49:16.04 ]
- まじめに見てないけど。
家(buf)には鍵(cs)が1つだけあって、それを先に取ったものが家に入れる。 「家とは関係のない鍵(cs1,cs2)」をそれぞれが持っててるだけでは意味ない。
- 862 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 01:07:21.50 ]
- CriticalSectionは1個だけ作成する。
作成するタイミングも間違い。コンストラクタか、FormCreate()でnewすべき。 競合するオブジェクトにアクセスしたいときにAcquire()する。
- 863 名前:860 mailto:sage [2011/10/27(木) 13:24:14.00 ]
- >>861-862
やってみたのですが、上手くいきません。 スレッド側のSleepがロックを解除してしまうとかはなさそうだし。 Sleepがないと、クリティカルセクションを使わなくても見た目では 競合していなかったので入れてみたのですが。 本来のやりたい事は、buf[]を介してUSB-I/O基板を繋いで、 メインスレッド側: ・Timer1で定期アクセス ・特定の処理で単発アクセス サブスレッド側: ・特定の処理で連続アクセス だったので、実験的に競合させるサンプルプログラムを作って動作を 試したかったのです。 (ググっても、見た目で効果がわかるようなサンプルプログラムはなかったので) タイマイベントの中でフラグを立てて、それを監視して競合を避ける方法も試してみます。
- 864 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 13:45:51.12 ]
- その上手くいかないソースは上げられませんか?
タイマイベントの中でフラグ云々は、クリティカルセクションそのもののような気が。
- 865 名前:デフォルトの名無しさん [2011/10/27(木) 13:59:33.25 ]
- 上げられません
- 866 名前:860 mailto:sage [2011/10/27(木) 15:16:25.87 ]
- >>864
こんなんです ttp://ideone.com/l7PYW フラグでの処理は、まだは試していません
- 867 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 17:23:54.69 ]
- Synchronizeってメインスレッドで動くから競合しないんじゃ…。
丸ごとSynchronizeするならスレッドの意味ないんじゃ…。
- 868 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 20:22:24.18 ]
- これ、クリティカルセクション保持したままメインスレッドに処理渡すと
デッドロックしそうなんだけど。 基本は競合するところに最小限のロックをかけるだから、テストといえどもまずい。
- 869 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 06:54:34.72 ]
- >>866
Timer1Timer はメインスレッドのメッセージループ内で動作するよ。 Synchronizeを使って呼び出されたSyncDebugはメインスレッドのメッセージループ内で動作するよ。 TCriticalSectionやMutexみたいなことをメッセージループで実現するのがTThreadのSynchronizeなのでどちらかにしたほうがいいよ。
- 870 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 11:41:44.21 ]
- 訂正
Mutexは違うな
- 871 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 13:00:04.95 ]
- 違わなくね?
- 872 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 16:31:44.78 ]
- いや、同じことは出来るけど、排他制御を関数内で完結させる(局所的な排他制御機構)という点でMutexはいれないほうがいいかなと後で思った
用途の違いというかそんな感じ
- 873 名前:デフォルトの名無しさん [2011/10/28(金) 22:25:37.51 ]
- TCriticalSection でぐぐれば、具体例がいろいろ出てくるよ。
実際に正しく動作する例を見れば、理解できるんじゃないかな。
- 874 名前:860 mailto:sage [2011/10/29(土) 10:27:45.71 ]
- >>967-868
最初はUnit2.cppのExecute()の中で競合させようと、 あれこれ試したのが、上手く競合した状態を作れなくて Synchronizeを使い出してしまったんですが、本末転倒ですね。 Synchronizeがメインスレッドで実行されるということは、 全く意識していませんでした。 >>869-872 Mutexはプログラム自体の二重起動防止では使っていますが、スレッドに対しても 使えるということでしょうかね。 >>873 TCriticalSectionはググってDelphiの例も読んでみたのですが、局所的な部分の 例しか見つけられませんでした。 クリテクカルセクションは、私には効果を確認する能力がないので諦めて、 フラグで処理しようと思います。 長々と付き合ってもらい、ありがとうございました。
- 875 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 11:15:49.57 ]
- >フラグで処理しようと思います
いや、・・・TCriticalSectionは、そのフラグだから。 マルチスレッドでもちゃんと調停してくれることを保証するフラグ。
- 876 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 11:54:06.06 ]
- >>875
それは解りましたが、”私の能力では”効果が確認できないので TCriticalSectionで書くのを止めるということです。 Synchronizeでも使ってメインスレッド側で調停させる ことにします。
- 877 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 15:35:02.01 ]
- やーい無能m9(^Д^)プギャーーーッ
- 878 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 16:24:53.78 ]
- >>876
何逆ギレしてんの?カルシウムとっとけよー
- 879 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 10:11:38.77 ]
- あれが逆ギレに見えるんだww
- 880 名前:デフォルトの名無しさん [2011/11/01(火) 10:05:20.79 ]
- 指定コントロールのMouseDownイベントで
Corsorの形状を変えているのですが この時にマウスボタンを離さないとカーソルが変わってくれません。 これマウスボタンを押したままでマウスカーソルを変更する方法を教えてください
- 881 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 16:40:12.41 ]
- 試してないけど カーソルを変更した後にApplication->ProcessMessages();入れてみたら?
- 882 名前:デフォルトの名無しさん [2011/11/01(火) 17:10:17.79 ]
- >>881
それやったけどダメですた。 ちなみにSleepもやったけどダメですた 何か強制的にカーソル変えるアレないですかね? ちなみにScreenのカーソルなら一発で変わるんですけどね
- 883 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 17:26:33.21 ]
- やりたいことがよくわからないんだけど、コントロールのCursorはそのコントロール上に
カーソルが来たときのデフォルトのカーソル形状を設定するもの。なので通常は Screen.Cursorを変更するんだけど。
- 884 名前:デフォルトの名無しさん [2011/11/17(木) 23:18:33.47 ]
- TIniFileクラスのWriteStringで、
改行を含むAnsiString型の文字列(中身=AA\r\nBB\r\nCC)をiniファイルに書く。 これでiniファイルを覗いてみると、 [Test] Test1=AA BB CC のように正しく書き込まれている。 でも、それをReadStringで読み込むと、AAまでしか読めず BBやCCの部分は読めない。 どうしたらいい? ちなみにTest1に書きたい文字は行数が決まっていない(改行が何回あるかわからない)
- 885 名前:デフォルトの名無しさん mailto:sage [2011/11/18(金) 00:13:38.10 ]
- [Test]
Test1_Lines=3 Test1_Line1=AA Test1_Line2=BB Test1_Line3=CC じゃだめ?
- 886 名前:デフォルトの名無しさん [2011/11/18(金) 08:47:52.86 ]
- その1
\r\nをあらかじめ別の文字あるいは文字列に置換して書き込む 読み出し時に、置換部分を\r\nに戻す その2 複数行に対応した関数(例:ReadStrings)を作成する
- 887 名前:デフォルトの名無しさん mailto:sage [2011/11/18(金) 09:41:37.18 ]
- Ini ファイルは、改行が区切りコードだからなぁ...
以下のデータがあった場合 AA\r\nzz=1\r\nCC [Test] Test1=AA zz=1 CC と書き込まれますが、884 は、ReadString で何が読めたらよい? まぁ簡単には HTTPApp.HTMLEncode/HTMLDecode を使うことを考えたらどうだろうか C++Builder でも(バージョンにもよるだろうけど)使えると思う。
- 888 名前:デフォルトの名無しさん [2011/11/21(月) 06:26:05.41 ]
- C++ Builder は、いつ C99 や C++11 に対応しますか?
- 889 名前:デフォルトの名無しさん mailto:sage [2011/11/21(月) 10:50:31.61 ]
- しません。
C++98 の亜種として、「Borland C++」という独自規格だと思ったほうがよいでしょう。 C++03 すら満足していません。
- 890 名前:デフォルトの名無しさん mailto:sage [2011/11/21(月) 14:21:43.73 ]
- >>888
高速C++「もどき」コンパイラだと思っておけばいいよ でもXE→Update→XE2→Updateの度にbcc32.exeのサイズが少しずつ大きくなっている まあ多分SSE4.2とかSSE4a、AVXのインラインアセンブラを拡充しただけだと思うけど
- 891 名前:デフォルトの名無しさん [2011/11/21(月) 14:27:49.03 ]
- かかってこいよ
- 892 名前:デフォルトの名無しさん mailto:sage [2011/11/21(月) 15:55:10.13 ]
- >まあ多分SSE4.2とかSSE4a、AVXのインラインアセンブラを
それはすばらしい
- 893 名前:デフォルトの名無しさん mailto:sage [2011/11/21(月) 16:16:06.30 ]
- でもVCのCompiler Intrinsicsの方が便利だと思わないか?
どちらにしろx64ではインラインアセンブラは禁止されちゃったしCompiler Intrinsicsを 使うしかないわけだが 今回C++Builderの64bit化が見送られたのもここら辺に関係ありそう
- 894 名前:デフォルトの名無しさん [2011/11/21(月) 16:51:10.99 ]
- TArrowSeriesでLineSeriesのXValue[0]=0みたいに
動的に値を変更するにはどうしたらいいですか? EndXValues->XValue[0]=0; とやっても値が変わらないみたいなので・・
- 895 名前:デフォルトの名無しさん mailto:sage [2011/11/22(火) 15:56:01.89 ]
- カタログには「ANSI/ISO C++言語標準への準拠とBoostサポート」って
書いてあったりするのになあ。 BCB5の頃は最新ANSI C/C++に対応って謳ってたのになあ。 インラインアセンブラはMSが勝手に自粛してるんじゃなくて、 コンパイラメーカーは64-bitでインラインアセンブラ実装しちゃ いけないってことなのかな。
- 896 名前:デフォルトの名無しさん mailto:sage [2011/11/22(火) 16:30:10.66 ]
- 禁止。って誰がいってるの?
- 897 名前:デフォルトの名無しさん mailto:sage [2011/11/22(火) 16:57:46.52 ]
- 移植性が落ちるから?
- 898 名前:デフォルトの名無しさん mailto:sage [2011/11/22(火) 17:13:03.04 ]
- Compiler Intrinsicsを使うとCPUに最適なコードを勝手に生成してくれるからだろう
アセンブリ言語まで抽象化されちまった そのCPUが持つ最高の命令を使うわけだ 気持ち悪いな レジスタが見えないとか
- 899 名前:デフォルトの名無しさん mailto:sage [2011/11/22(火) 17:16:11.65 ]
- >>896
msdn.microsoft.com/ja-jp/library/26td21ds(v=vs.80).aspx >The intrinsics are required on 64-bit architectures where inline assembly is not supported. 禁止は別にされてないが、VCでAMD64用のコンパイラはインラインアセンブラを サポートしなくなったってだけの話だろ Embarcaderoがどのようにしようと勝手 でもCompiler Intrinsicsが主流になりそうな予感
- 900 名前:デフォルトの名無しさん mailto:sage [2011/11/23(水) 03:34:04.45 ]
- Compiler Intrinsics は MS/Intel/GCC でサポートされちゃったからねぇ
- 901 名前:デフォルトの名無しさん [2011/11/24(木) 13:25:04.98 ]
- TChartで動的にスクロールする方法おしえて
- 902 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 12:15:27.64 ]
- 顔を横に動かす。
- 903 名前:デフォルトの名無しさん [2011/11/25(金) 21:45:22.42 ]
- それでは縦スクロール出来ないじゃん
- 904 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 22:51:40.65 ]
- 顔を縦に。。。
いや、なんでもない
- 905 名前:デフォルトの名無しさん mailto:sage [2011/11/28(月) 23:48:57.40 ]
- え、インラインアセンブリ無しでどうやってMMXやSSE動かすの?
- 906 名前:デフォルトの名無しさん mailto:sage [2011/11/29(火) 09:21:01.53 ]
- VisualC++、IntelC++ GCC は十分に頭がよいので、アセンブラ使わなくても十分速度は出る。
そしてどうしても使いたいときは、MMX/SSE の命令に一対一対応した専用の関数を使う。 上記のコンパイラは十分頭がよいので、それらを適切なアセンブラ命令に変換してくれる。 某所の頭が悪いコンパイラではそういうことはできない
- 907 名前:デフォルトの名無しさん [2011/11/30(水) 16:19:47.91 ]
- 質問あるんだけどログ見る限りじゃまともに答えてくれる人はいないな・・・
いつからこんなゴミ隔離スレになっちゃったんだろ・・
- 908 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 16:26:33.72 ]
- >>907からゴミ隔離スレになりました
- 909 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 17:15:17.43 ]
- もう板全体というか2ch自体が過去の遺物
- 910 名前:デフォルトの名無しさん [2011/11/30(水) 17:22:08.29 ]
- やっぱりゴミが沸いた・・・
もうダメだこのスレ・・・
- 911 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 17:34:59.06 ]
- 質問も書かずに荒らしてるのはお前なんだけどな
- 912 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 18:18:12.24 ]
- >>907
わかることなら答えるよ ここのふいんきがいやなら公式フォーラムで
- 913 名前:デフォルトの名無しさん [2011/11/30(水) 18:35:18.41 ]
- ここは雑魚しかいないから他行きます・・
- 914 名前:デフォルトの名無しさん mailto:age [2011/11/30(水) 18:37:32.90 ]
- 2ch自体が雑魚の集まり
- 915 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 18:37:37.39 ]
- >>913
お前も雑魚だな
- 916 名前:デフォルトの名無しさん [2011/11/30(水) 18:53:52.21 ]
- 雑魚はレスしないで下さい。ウザイだけです。。
- 917 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 20:13:25.10 ]
- ま た お ま え か
- 918 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 21:01:48.45 ]
- >>916
と 雑 魚 が申しております
- 919 名前:デフォルトの名無しさん [2011/11/30(水) 21:40:59.09 ]
- また雑魚か
- 920 名前:デフォルトの名無しさん [2011/12/06(火) 16:26:47.18 ]
- TLineSeriesでLinePenの幅はピクセル単位だけどこれを物理量(軸スケールと同じ単位)で指定する方法を教えてください
- 921 名前:デフォルトの名無しさん [2011/12/06(火) 17:09:10.79 ]
- Chart->LeftAxis->CalcPosValueってのを発見したけど!
何を与えても全部0で返ってくる・・・ これどうしたらちゃんとした値が返るの??
- 922 名前:デフォルトの名無しさん mailto:sage [2011/12/06(火) 17:21:18.99 ]
- CalcYSizeValue
- 923 名前:ヘルプの"チャート上でのカスタム描画"から引用 mailto:sage [2011/12/06(火) 17:23:42.95 ]
- 系列の値から画面の座標値を割り出すメソッド
系列にも座標値からポイント値への変換,およびこの反対の変換を行う似たようなメソッドがあります。主な違いは,系列メソッドを使用すると,計算の際に正確な軸コンポーネントを理解している必要がないという点です。 これは,右または上の軸に関連する系列,あるいは各軸に関連する複数の軸がある場合に,大変便利です。 CalcPosValue このコードは,1000 の値を持つ Series1 のポイントを画面上のどこに置くかを計算します。 Var MyPos : Longint ; MyPos := Series1.CalcPosValue( 1000 ); あるいは MyYPos := Series1.CalcPosValue( Series1.YValue[ 0 ] ) ; { <-- 最初のポイント } CalcXPos および CalcYPos 特定のポイントあるいは特定のポイント値に対する,X および Y の両方の座標値を計算することができます。 MyXPos := Series1.CalcXPos( EncodeDate( 1997, 12, 31) ) ; あるいは MyXPos := Series1.CalcXPos( Series1.XValues.Last ); { <-- 最後のポイント } XScreenToValue および YScreenToValue 画面ピクセルをポイント値に変換するには,次のコードを使用してください(水平座標値用は XScreenToValue)。 Var MyValue : Double ; MyValue := Series1.YScreenToValue( Y ) ;
- 924 名前:デフォルトの名無しさん [2011/12/06(火) 17:29:49.35 ]
- >>922
ありがとう てか、表示でけた。 Showイベで値取得できないのねこれ。 ボタン押して取得するようにしたら取れた ちなみに CalcPosValueとCalcYSizeValueの違いがいまいちよくわからないなあ 同じくLeftAxis->これでやったら違う値かあらmfだdsm「pふじこ
- 925 名前:デフォルトの名無しさん [2011/12/06(火) 17:39:42.86 ]
- C++Builder6 で作ったプログラムで、
FormatDateTime で元号の表示してるプログラムの場合、 将来的に元号変わったら、その時点で使えなくなるって認識でいい?
- 926 名前:デフォルトの名無しさん mailto:sage [2011/12/06(火) 17:49:16.72 ]
- OSに依存じゃなかったっけ
- 927 名前:925 [2011/12/06(火) 22:46:49.95 ]
- レスありがとう。
それなら安心なんだが。 質問するまえに、ライブラリのソース見てみればよかったんだね。 気がつかなかったw ディスクを探す作業に戻るよ。
|

|