- 1 名前:デフォルトの名無しさん mailto:sage [2007/02/12(月) 03:39:51 ]
- このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。 C++Builder使いが優しくコメントを返しますが、 お礼はC++Builderの布教と初心者の救済をお願いします。 Borland Home Page www.borland.co.jp/ <過去スレ> くだすれC++Builder(超初心者用) pc8.2ch.net/test/read.cgi/tech/1117225464/l50 くだすれC++Builder(超初心者用)その2 pc10.2ch.net/test/read.cgi/tech/1144308804/l50 <兄弟スレ> くだすれDelphi(超初心者用)その39 pc10.2ch.net/test/read.cgi/tech/1169386914/l50
- 620 名前:デフォルトの名無しさん mailto:sage [2008/07/25(金) 21:11:48 ]
- マルチポストしまくりで解決済みなんでスルーでいいよ
- 621 名前:デフォルトの名無しさん mailto:sage [2008/07/26(土) 21:04:15 ]
- >>615 スタックのサイズを大きくしたらいけました。ありがとうございます。
- 622 名前:デフォルトの名無しさん mailto:sage [2008/07/26(土) 21:09:55 ]
- >>621
とりあえず載ってるコードがダメダメな気がするから自分で書き直すことをお奨めする
- 623 名前:デフォルトの名無しさん mailto:sage [2008/07/26(土) 22:36:46 ]
- コンパイルするとError: 外部シンボル 'WinMain' が未解決(C:\BORLAND\BCC55\LIB\C0W32.OBJ が参照
とでるのですが、理由がわかりません・・・。 どなたかわかる方お願いします。
- 624 名前:デフォルトの名無しさん [2008/07/27(日) 14:51:31 ]
- フォームに配置したTButtonのOnClickイベントを、
実際にボタンを押してではなく、あるメソッド内から呼び出したいのですが そういうことは可能ですか?
- 625 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 15:12:14 ]
- TButton::Click()があるじゃない
- 626 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 15:43:56 ]
- >>625
おかげさまで解決しました。 ありがとうございました。
- 627 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 22:16:52 ]
- おすすめのエディタ教えてください!
今までC言語を始めよう!というフリーソフトを使ってきました
- 628 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 22:17:48 ]
- >>627
スレ違い
- 629 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 23:24:30 ]
- >>627
エディタ部分だけなら2006以降のエディタの方がいいかな ウィンドウ構成とかは6までのIDEのほうが好きだけど
- 630 名前:デフォルトの名無しさん mailto:sage [2008/08/05(火) 15:25:09 ]
- C++Builder6からmecabを使いたいのですが、一週間以上格闘しても光が見えません(涙)
mecabの初期化すら出来ない状態なので何かアドバイス頂ければ嬉しいです。 よろしくお願いします。
- 631 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 15:12:29 ]
- OpenProcessで使うPROCESS_ALLACCESSマクロだが、定義間違ってね?
VCその他では #define PROCESS_ALL_ACCESS 0x001f0fff BCCでは #define PROCESS_ALL_ACCESS 0x001fffff になってる。 たぶん>>427の問題もそのせい こういうバグってどこに報告すればいいん?
- 632 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 15:31:13 ]
- 普通に0x1F0FFFになってるが。
検証コードはprintf("%08X", PROCESS_ALL_ACCESS); 環境は6pro update4
- 633 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 15:37:38 ]
- winnt.h
#define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | \ 0xFFF) #define STANDARD_RIGHTS_REQUIRED (0x000F0000L) #define SYNCHRONIZE (0x00100000L) どう見ても 001f0fff だわな
- 634 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 15:38:59 ]
- おっと、手元のが古いだけか
駄レスすまそ
- 635 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 11:28:57 ]
- そういうところまで疑わなきゃいけないんだな、面倒な
- 636 名前:デフォルトの名無しさん [2008/08/09(土) 21:33:14 ]
- TEditにある数値を入力して、OnExitイベントで入力された数値を
チェックしてますが、入力値が異常でも、フォーカスが次のTEdit にうつってしまいます。 よく考えれば当然といえば当然の結果なのですが、どうしても正常値 を入力するまでフォーカスを保持させたいのですが、行き詰ってしまい ました。 よい解決方法がないでしょうか。よろしくお願いします。
- 637 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 22:19:30 ]
- できるじゃん
void __fastcall TForm1::Edit1Exit(TObject *Sender) { TEdit* edit = dynamic_cast<TEdit*>(Sender); if (edit->Text != AnsiString("aaa")) { edit->SetFocus(); } }
- 638 名前:デフォルトの名無しさん [2008/08/11(月) 15:43:16 ]
- ScanLineとRGBTRIPLEについて質問です。
ネットで調べると、ScanLineで取り込んだ配列はBGRの順番に入っているのでRGBTRIPLEに入れればよいとなっていたのですが、 実際に使ってみるとずれており、4番目の数値(中身は0)があるような感じでした。 BYTEが4つある配列に入れることで動作させましたが、以下の書き方は間違っているのでしょうか? int i,j; int RoopMax=100; // ループ回数 DynamicArray<RGBTRIPLE*> slbuf; slbuf.Length=RoopMax; for (i=0 ; i<RoopMax ; i++){ slbuf[i] = (RGBTRIPLE*)ColPos[Num]->Picture->Bitmap->ScanLine[i]; } for(i=0;i<RoopMax;i++){ for(j=0;j<RoopMax;j++){ Ra[i][j] = slbuf[i][j].rgbtRed; Ga[i][j] = slbuf[i][j].rgbtGreen; Ba[i][j] = slbuf[i][j].rgbtBlue; } }
- 639 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 15:56:51 ]
- >>638
ビットマップが24bitならBGRの3bytes、32bitならBGRAの4bytes。
- 640 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 15:58:52 ]
- あと、今のPCだと32bitのほうが一般に処理速度早くなるから注意。
24bitだとワード+バイト転送なのに対し、32bitはダブルワード1回ですむ
- 641 名前:デフォルトの名無しさん [2008/08/11(月) 16:07:26 ]
- >>639-640
なるほど、ビットマップの形式によって変わるので処理としては間違ってはいないんですね。 BGRAがあることに気づきませんでした。 ありがとうございます。
- 642 名前:デフォルトの名無しさん mailto:sage [2008/08/13(水) 17:02:27 ]
- サブのスレッド(TThread)でTNotifyEventを発生させて、そのイベントによりメイン側の関数が実行されたとき
メイン側のメンバ変数の内容が見えないのですが、どうすればいいのでしょうか。 エラーが出るのではなく、関係ない数値が入っているので、別の部分を参照しているみたいです 具体的には メイン側クラス(MainClass)、サブのスレッド(SubThread) MainClass内で AnsiString a; SubThread->hogeEvent = (TNotifyEvent)&hogeFunc; さらに void hogeFunc(TObject* Sender) { MessageBox(Handle , a.c_str() , "",MB_OK); } として、hogeEventを発生させたとき、メイン側で既に代入したaの内容が読み取れていない といった感じです。 よろしくお願いします。
- 643 名前:デフォルトの名無しさん mailto:sage [2008/08/13(水) 23:46:54 ]
- 実行コンテキストを無視しちゃだめ。メインスレッドに属するコード部分はメインスレッドのコンテキストで
実行する。PostMessageとかSynchronizeとかを使う。
- 644 名前:デフォルトの名無しさん mailto:sage [2008/08/14(木) 03:13:49 ]
- >>643
ありがとうございます。 TNotifyEvent fOnHoge; __property TNotifyEvent hogeEvent = {read=fOnHoge,write=fOnHoge}; void __fastcall TSubThread::evHoge(TObject* Sender) { if(hogeEvent){ hogeEvent(this); } として、サブスレッド内で Synchronize((TThreadMethod)&evHoge); を呼び出しても、解決しません。 このような書き方ではメインスレッドのコンテキストで実行されないのでしょうか。 2度も申し訳ありませんが、よろしくお願いします。
- 645 名前:デフォルトの名無しさん mailto:sage [2008/08/14(木) 18:47:21 ]
- アホな質問をお許し下さい。
Unit1.cppにくっついてるフォームForm1(Unit1.dfm)のMemo1に Unit2.cppの処理から文字を入れたいときはどうすればよいでしょうか… VBっぽくForm1->Memo1->Lines->Add(a);みたいにしたら出来るかなーと思ったけど駄目でした Turbo C++を使っています。
- 646 名前:デフォルトの名無しさん mailto:sage [2008/08/14(木) 18:48:37 ]
- Unit2.hppに#include "Unit1.hpp"
- 647 名前:デフォルトの名無しさん mailto:sage [2008/08/14(木) 18:50:14 ]
- ファイル→ユニットヘッダーファイルの追加の方が楽か
- 648 名前:645 mailto:sage [2008/08/14(木) 19:10:20 ]
- おおお
出来ました。ありがとうございます!
- 649 名前:デフォルトの名無しさん [2008/08/17(日) 03:27:01 ]
- NI社のUSB-6008という製品を使ったことのある方はいますか?
これを使用してみたいのですが、最初にどこから手をつけていいのかわからなくって・・・。 とりあえず、DLLのインポートライブラリを作成してみようと、nidaq32.dllを使用してみたのですが、 Error nidaq32.dll: unknown file type と、なってしまいます。 NI-DAQのバージョンは7.2 XPでBuilder6.0を使用しています。
- 650 名前:デフォルトの名無しさん mailto:sage [2008/08/18(月) 00:43:53 ]
- それインポートライブラリが悪いか、nidaq32.dll にパスが通ってない、とか。
- 651 名前:デフォルトの名無しさん [2008/08/18(月) 01:24:22 ]
- nidaq32.dllがあるフォルダで、コマンドプロンプトから実行したのですが・・・
これってIMPLIBの使い方間違ってます?
- 652 名前:デフォルトの名無しさん mailto:sage [2008/08/18(月) 20:02:18 ]
- #include <stdio.h>
#include <System.hpp> #pragma link "vcl.lib" #pragma link "rtl.lib" int main() { wchar_t col_caption[256]; int width; int r0 = swscanf(L"知名性 (20)", L"%s (%d)", col_caption, &width); printf("> %s : %d (%d)", AnsiString(col_caption).c_str(), width, r0); } 上のコードの実行結果が期待する結果の > 知名性 : 20 (2) にならずに > 知 : 4 (1) となるのですがRTLのバグのほかになにか原因はありますでしょうか 環境はBCB6Pro#4、Win2kです。
- 653 名前:デフォルトの名無しさん mailto:sage [2008/08/19(火) 09:01:04 ]
- setlocale
- 654 名前:デフォルトの名無しさん mailto:sage [2008/08/19(火) 09:09:17 ]
- >setlocale
これって何のライブラリになるんでしょ?C++標準?VCL? それを知らないと、#includeできないので。 あと、getlocaleってのもあるんでしょうか?
- 655 名前:デフォルトの名無しさん mailto:sage [2008/08/19(火) 09:18:02 ]
- ついでですが、
localelist みたいな1式も取れるんでしょうか?
- 656 名前:デフォルトの名無しさん mailto:sage [2008/08/19(火) 09:35:41 ]
- setlocaleはswscanfには関係ないと思うんですの。VC2005だとちゃんと動くし。
BCBでも他の文字列ではちゃんと動いてるし。
- 657 名前:デフォルトの名無しさん mailto:sage [2008/08/19(火) 09:50:06 ]
- 確かにBCBヘルプに
>Standard C++ Library: Class Reference >locale ってのがありますね。 これはクラスだからいろいろメソッド使えるかも。 でも、これで切り替えても、 AnsiToUtf8/Utf8ToAnsiのロケールとは無関係なんかなぁ。 あ〜、テストプログラム作れば良いんだが、通勤時の暑さのせいでしんどい。
- 658 名前:デフォルトの名無しさん [2008/08/19(火) 23:14:53 ]
- >>650
インポートライブラリが悪いって、どのような現象があるのでしょうか? BuilderのバージョンはBuild10.166ですが・・・
- 659 名前: ◆jButlJVlzY mailto:sage [2008/08/19(火) 23:16:05 ]
- #include <iostream>
using namespace std; int op; char a,b,c,d,f; int main(){ cout>>"物語の始まり">>endl; /* char a ="起"; char b ="承"; char c ="転"; char d ="結"; char f ="おまけ"; */ cout << "1目次1ページ目 目次2ページ 目次3ページ 目次4ページ 目次5ペーじ おまけ" << flush; cin >> op; {
- 660 名前:デフォルトの名無しさん [2008/08/21(木) 02:12:21 ]
- すいません、どなたか>>658についてわからないでしょうか。
正解でなくても、何か参考になるようなことでもいいので意見を下さい。 よろしくお願いします。
- 661 名前:デフォルトの名無しさん mailto:sage [2008/08/21(木) 07:47:42 ]
- implib nidaq32.dll nidaq32.lib と引数の順番を間違って実行して、nidaq32.dllが壊れて、その後
implib nidaq32.lib nidaq32.dll と順番を直したけどnidaq32.dllは壊れてるからエラー、とか? 一応本家にbcc用のインポートライブラリがあるみたいだけど。 ↓の一番下のzip digital.ni.com/public.nsf/allkb/7793F4D8AFC47C1E86256E84005BBBE8
- 662 名前:デフォルトの名無しさん mailto:sage [2008/08/21(木) 20:09:54 ]
- >>649
NIDAQmxのDLLはnicaiu.dll見たいだよ? NIDAQmxをインストールするとc:\WINDOWS\system32あたりにnicaiu.dllがあるはずだから >implib nicaiu nicaiu.dll でnicaiu.libを作ってリンクしてみたら?
- 663 名前:デフォルトの名無しさん [2008/08/22(金) 02:33:44 ]
- >>661
すいません、一度壊してました・・・orz >>662 NIDAQではなく、NIDAQmxを使うのですか!! ありがとうございます、やってみます。
- 664 名前:デフォルトの名無しさん [2008/08/27(水) 17:23:50 ]
- メインフォームのForm1と、 処理中ダイアログ用のForm2があって、 次のように使っています。
void __fastcall TForm1::ShowDialog() { Form2->Show(); for (i=0;i<100;i++) {... ;ProgressBar1->Position=i; ...} Form2->Hide(); } このForm2が前面に表示されている最中は、 Form1上にあるボタンをクリックしても OnClickイベントが発生しないようにしたい(無視したい)のですが、 どうしたらいいのでしょうか? Form2表示中にForm1上のボタンをクリックしたことによる処理が、 Form2が隠れた後に 実行されて困っています。 よろしくお願いします。
- 665 名前:デフォルトの名無しさん mailto:sage [2008/08/27(水) 19:58:48 ]
- ShowModalでもしておけば?
- 666 名前:664 mailto:sage [2008/08/27(水) 20:39:55 ]
- >>665
ありがとうございます
- 667 名前:デフォルトの名無しさん [2008/08/28(木) 03:05:24 ]
- 8点ほど計測して、下の脳波測定のように境目をボカしたいのですが、何か良い方法はありますでしょうか?
www.speedreading.co.jp/read/riron07.html 8つの円を描き、全体をぼかすように前後左右の平均を取るように処理してみたところ、何度もやるとものすごく時間がかかるので・・・。 ぼかし処理は下のものを使用しました。 gimite.net/bcbqtree/qtreemain.cgi?mode=thread&thread=135
- 668 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 22:15:29 ]
- 全然ダウンロードできないのですが、今日だけの現象ですか?
update.codegear.com/forms/jp_cpp_download_reg ここに何度登録したことか。。。。
- 669 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 22:34:00 ]
- now.eloqua.com/e/f2.aspx
サーバーが見つかりません
- 670 名前:デフォルトの名無しさん [2008/08/31(日) 00:08:20 ]
- そうだね
- 671 名前:デフォルトの名無しさん [2008/09/06(土) 08:25:00 ]
- TurboC++ Professionalは、もうどこにも売ってないのですか?
- 672 名前:デフォルトの名無しさん [2008/09/06(土) 10:46:04 ]
- 初心者質問すいません
英単語の文字数を数えるにはどうすればいいですか?
- 673 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 10:52:49 ]
- AnsiString::Length()
- 674 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 10:57:35 ]
- C++とC#は別物ですか?
- 675 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 11:04:33 ]
- 別物
- 676 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 11:15:14 ]
- >>675
ありがとうございました。ここではC++という文字をよくみるのに本屋ではC#をよくみたので一緒かなと思いました ありがとうございました
- 677 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 17:27:47 ]
- 実は # は
++ ++ だったんだよ!
- 678 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 01:24:48 ]
- >>677
C++が一つ増えるなら、 C#は半分だけ増えるっていうイメージなんだけど。 それだと、2つも増えてるな。
- 679 名前:デフォルトの名無しさん [2008/09/07(日) 02:35:29 ]
- >>677
その発想は無かったわ
- 680 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:30:34 ]
- エクスプローラの「表示」→「縮小版」みたいに、複数の画像を
サムネイル表示したいと思っています。 ttp://www2.ttcn.ne.jp/tkky/Tips/DrawGrid/drawgrid1.htm を参考にDrawGridを使って実現しようかと思っていたのですが、 DrawGridコンポーネント1個に対して, 1つの画像しか表示できないんでしょうか?
- 681 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 23:31:12 ]
- サムネイルはListView使っとけ
- 682 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 21:57:33 ]
- Buliderっていう名前が明らかにマッチョ男性専用ソフトですっていってるようで怖い。
アメリカ人は本当にマッチョが好きだよな。サンフランシスコ。
- 683 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 04:41:14 ]
- >>681
そうします。ありがとうございます
- 684 名前:680 mailto:sage [2008/09/09(火) 07:34:14 ]
- 追加の質問ですみません。
ListViewでサムネイル表示を試してみようと、 下の(1)〜(6)の手順でやってみたのですが、ビルド中に固まります。 アイコン画像サイズ256×256を越えているせいみたいなのですが, 表示されるサムネイルの画像サイズを320×240で表示するには、どうしたらいいんでしょうか? アドバイスよろしくお願いします。 ----- (1)Form1にImageList1を貼り付ける (2)オブジェクトインスペクタからImageList1のプロパティをWidth=320;Heiht=240;に変更 (3)ImageList1ダブルクリックして, 「追加」押して320×240の画像1枚を選択して「OK」押す (4)Form1にListView1を貼り付ける (5)オブジェクトインスペクタからListView1のLargeImagesプロパティでImageList1を指定 (6)オブジェクトインスペクタからListView1のItemsプロパティで「新規作成」押して「キャプション」にテストと入力して「OK」押す
- 685 名前:デフォルトの名無しさん [2008/09/22(月) 10:04:17 ]
- メニュー項目を設定する
TMenuItemのCaptionにて 開く(&O)... と設定されますけど、 このピリオド3個の意味を教えてください。
- 686 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 12:43:51 ]
- 押すと他のウィンドウが開くって意味がほとんどじゃ?
- 687 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 20:03:06 ]
- >>685
ピリオドがないのは、処理がすぐ終わるけど ピリオドがあるのは、ダイアログが出るでしょ。 それだよ。
- 688 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 23:25:23 ]
- >>686 >>687
れすありがとうございます。 確かに...なのは、ダイアログが開く系ですね。 (& みたいな特別な機能がある訳ではなく WindowsのUIの作法みたいなものなのですね。 とても参考になりすた。
- 689 名前:デフォルトの名無しさん [2008/09/28(日) 23:08:48 ]
- 質問です。
TFontのStyleがSet という特別な型だったのですが 設定は、Font->Style << fsBold のようにすれば良いのはヘルプに記載があったのですが FontにfsBoldが設定されているかを調べる方法がわかりません。 どうすればいいのでしょうか。
- 690 名前:デフォルトの名無しさん mailto:sage [2008/09/28(日) 23:34:45 ]
- if ( Font->Style.Contains(fsBold) )
- 691 名前:デフォルトの名無しさん mailto:sage [2008/09/28(日) 23:45:56 ]
- >>690
できましたーーー。超ありがとうございます。
- 692 名前:デフォルトの名無しさん [2008/09/29(月) 23:49:18 ]
- いろんなほかのプログラムのボタンを押すプログラムを作るにはどうすればいいのでしょう?
具体的には mplayerの再生ボタンや巻き戻しボタンを押したり、mediaplayerの再生ボタンを押したり その他新しいプログラムの再生ボタンを簡単に登録して押せるようなそんなプログラムを くみたいのですが。
- 693 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 00:17:51 ]
- ウィンドウハンドル持ってるコントロールならBN_CLICKEDをPostすればいいじゃない。
メニューバーから操作できる機能なら、コマンドIDをメニューリソース見るか、SPY++やWinspectorでコマンドID調べてWM_COMMANDでPostすればいい。 どっちもだめならSendInputでがんばるしかない。
- 694 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 00:18:33 ]
- 簡単に説明すると、ウインドウを列挙して、中の再生ボタンのハンドルを取る。
ハンドルが取れれば、APIでごにょごにょできるでしょ。 あとはがんばれ。
- 695 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 10:50:39 ]
- あぁ!そっか、難しく考えすぎてた。
ありがとうございます。
- 696 名前:デフォルトの名無しさん [2008/09/30(火) 20:54:22 ]
- 質問です。
リストボックスにD&Dでリストボックスにファイルパスを表示する プログラムをどうすれば言いか教えていただけないでしょうか?
- 697 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 22:04:17 ]
- をぃ、日本語が不自由な奴よ。
マルチポストはルール違反だぜよ。
- 698 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 22:44:16 ]
- >696
"C++Builder" ファイル ドラッグアンドドロップ でぐぐれ
- 699 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 00:15:22 ]
- test
- 700 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 00:19:19 ]
- ごめんなさい、プロバイダが規制くらってたのでtest書き込みしてしまいました。
質問なんですが、フォームを使ってアプリを作っており、 デバッグで配列の中身や変数を見たく、printfなんかでコンソールに表示させたいのですが 何か方法はありますか? インスペクタ?みたいなのはどうも使いにくくて・・・ ちなみに、C++Builder6を使ってます
- 701 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 00:32:28 ]
- これでどうでしょ?
ttp://msdn.microsoft.com/ja-jp/library/cc428973.aspx でもIDEのデバッガ機能をちゃんと勉強して使ったほうが楽だと思うけどね。
- 702 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 01:08:53 ]
- >>700
AllocConsole()でコンソールが開きます。コンソールのハンドルをGetStdHandle( STD_OUTPUT_HANDLE )で取得したら SetConsoleTextAttribute()とWriteConsole()で好きな文章を色つきで出力できます。 printf() っぽく使うならこんな感じ #include <stdio.h> int __stdcall con_printf( const CHAR* Format, ... ) { const int nLengthMax = 1024; int nLength = 0; HANDLE hConsole = ::GetStdHandle( STD_OUTPUT_HANDLE ); if( hConsole != INVALID_HANDLE_VALUE ){ CHAR Message[ nLengthMax ]; va_list List; va_start( List, Format ); nLength = vsnprintf( Message, nLengthMax - 1, Format, List ); va_end( List ); DWORD dwLengthWritten; ::WriteConsole( hConsole, Message, (DWORD)nLength, &dwLengthWritten, NULL ); } return( nLength ); } IDEが入ってない環境とかで使えるよ。
- 703 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 02:04:16 ]
- _open_osfhandle()とかdup2()とかを組み合わせれば
普通にそのままのprintfが使えるようになるんじゃないかね。 知らないけど。
- 704 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 02:44:28 ]
- IDEでデバッグしてるならOutputDebugString使えばイベントウィンドウに出力されるぞ
- 705 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 10:34:03 ]
- 複数のフォームを持ったアプリを作っています。
メインフォームの初期化ルーチン(FormCreateとか)から他のフォームの初期化ルーチンを呼び出したいが、 それがまだ生成されていないのでエラーになるというケースが多くて困っています。 全てのフォームが生成された後で一括して初期化を行いたいという時にはどうすればよいのでしょうか? どなたか教えて下さい。
- 706 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 12:02:22 ]
- メインフォームのコンストラクタで他のフォームnewすれば?
- 707 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 12:46:22 ]
- >>700
解決したかも知れないけど、 TMemo 貼って Add で俺はやってる。
- 708 名前:デフォルトの名無しさん [2008/10/02(木) 17:46:19 ]
- コンパイルした時に作成される実行ファイルの名前を、プログラム側で変更することってできます?
#ifdefで二種類作るので、間違えないようにしたいのですが・・・
- 709 名前:700 mailto:sage [2008/10/02(木) 18:59:26 ]
- なるほど、色んなやり方があるんですね。
しかしこのスレ非常にやさしいw ありがとうございました〜、色々とやってみて合うもの見つけてみます
- 710 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 19:43:14 ]
- >>708
#pragma optionでできないものリストに「-efilename」が書かれてるから無理 objファイルならできるけど。
- 711 名前:デフォルトの名無しさん [2008/10/02(木) 19:56:58 ]
- >>710
無理なんですか、了解です。 ありがとうございました。
- 712 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 20:00:24 ]
- >>711
makefileで分けるといい
- 713 名前:705 mailto:sage [2008/10/03(金) 17:03:11 ]
- >>706 どうもありがとうございます。やってみます。
- 714 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 00:02:21 ]
- TwebBrowserで表示したページのセレクトボックスを変更したりボタンを押したりしたいのですが、参考になるページが見つからず途方に暮れています(他の言語は多少あるのですが・・・)
他の言語のを真似して WebBrowser1->Document->All->GetElementsByName("hoge")[0]->selectedindex = 0; ※hogeは表示するページのソースをみて名前を調べました などとしたのですが、「AllはIdispatchのメンバーではない」とエラーが出ます・・・ どんな書き方をすればよいのでしょうか
- 715 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 04:28:58 ]
- たぶん中身をIHTMDocument2とかにして触るんじゃないかな。
昔触ったのを見たら IHTMLDocument2Ptr doc; doc = browser->Document; IHTMLElementPtr body = doc->body; とかやってた。 IHTMLDocument2Ptrとして使うには、MSHTMLかなんかをimportだかする必要があったと思うけど。
- 716 名前:デフォルトの名無しさん [2008/10/19(日) 04:31:46 ]
- Imageに貼り付けた四角の画像を台形とかに変形させることはできますか?
- 717 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 04:18:55 ]
- できる
- 718 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 16:48:53 ]
- できるよ
- 719 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 15:03:10 ]
- AnsiStringsの中に何も入っていない場合、c_str()で比較してチェックすることはできますか?
if(c_str()=="")やif(c_str()==NULL)と書いても素通りしますよね。 Lengthが0かどうかでチェックをしているので問題は無いのですが、気になったのでよろしくお願いします。
- 720 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 16:20:53 ]
- IsEmpty()
|

|