C++Builder相談室 Part4
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG過去スレ・関連サイトは>>2-4あたり。
0336デフォルトの名無しさん
NGNGCancelして、新しいTabSheetに作ったブラウザでNavigate2すればいいんじゃないの?
飛び先アドレスの取得は、クリックならStatusTextChange等で(およそ)出来たはず。
およそと書いたのは、なんか問題があるらしいとあぼーんスレで読んだ気がするから。
よく読んでないからわからんけどね。
0337デフォルトの名無しさん
NGNGStatusTextChangeってプロパティ?でアレですかー
んーこの辺はちょっと難しそうですねー
ここらの情報ってどこかに載ってるサイトないですかね?
0338デフォルトの名無しさん
NGNG書いてますねーこれ、あー、どうすればいいんだあああああああ
0339デフォルトの名無しさん
NGNG私は遠慮なくStatusTextChangeイベントを使ってますよ。
特に問題はなさそう。
ただ、StatusTextChangeでは、#を含むURLが上手く取得出来なかったと
思います。(例えばGoogleの参照URLとか)
良かったら、これをどうぞ。
http://abone.pos.to/Code.txt
0340デフォルトの名無しさん
NGNGふーふー(;´Д`)
激しく感謝します!
早速試してみます!!
0341デフォルトの名無しさん
NGNGあ、すみません・・
StatusTextChangeイベントが発生しないのですが、何か設定が必要なのでしょうか?
また、教えて頂いたソースでやってみたのですが、飛び先URL
じゃなくて、何か自分のURLぽかったのですが、ちょっと私のやり方が
アレかもなので、再度トライしてみます。
0342デフォルトの名無しさん
NGNGにしているのですが、マウスでこの表示ウィンドゥのサイズを変更した時に、動画の
サイズが変わってくれません。
何が間違っているのでしょうか?
void __fastcall TViewForm::ViewPanelResize(TObject *Sender)
{
MainForm->MediaPlayer->DisplayRect.Right = ViewPanel->Width;
MainForm->MediaPlayer->DisplayRect.Bottom = ViewPanel->Height;
MainForm->MediaPlayer->Display = ViewPanel;
}
0343デフォルトの名無しさん
NGNGDisplayRectのRightとかBottomメンバを個別に変えていてはだめなようです。TRectクラスを
一度に与えるとうまくリサイズできました。
MainForm->MediaPlayer->Display = ViewPanel;
MainForm->MediaPlayer->DisplayRect = TRect(
MainForm->MediaPlayer->DisplayRect.Left,
MainForm->MediaPlayer->DisplayRect.Top,
MainForm->MediaPlayer->DisplayRect.Left + ViewPanel->Width,
MainForm->MediaPlayer->DisplayRect.Top + ViewPanel->Height
);
0344デフォルトの名無しさん
NGNGウインドウハンドルがわかっている他のアプリケーションのウインドウの
クライアント領域での相対的なマウスの座標を知りたいのですが、
先ず、GetCursorPos 関数でマウスのスクリーン座標を拾って
次にAPIの ScreenToClient 関数で目的の座標に変換しようとしたのですが、
コンパイルエラーが発生しました。
ならば今度はAPIの GetClientRect 関数でクライアント領域の左上の
座標を拾って目的の座標を計算しようとしたのですが、これもエラーと。
エラーメッセージを見た限りでは、これらのAPI関数はBCB6では使えないような雰囲気なんです。
何かいい方法・解決策がありましたら教えていただけませんか。
ソースの骨子は次のような感じです。
ヘッダーファイルはデフォルト状態から何も加えない状態で、目的のウインドウのハンドルを hWnd(既知)として、
{
POINT pm;
GetCursorPos(&pm);
ScreenToClient(hWnd,&pm); //←ここでコンパイルエラー
RECT rc;
GetClientRect(hWnd,&rc); //←ここもコンパイルエラー
}
0345デフォルトの名無しさん
NGNGScreenToClient を ::ScreenToClient にすればよくないかな?
0346344
NGNG忠告もありがとうございました。
0347デフォルトの名無しさん
NGNGうまくいかないです。
StringGrid->InvalidateRow(StringGrid->Row);
を試してみましたが、だめでした。
0348デフォルトの名無しさん
NGNG何で特定のRowだけなの?TDrawGridとかで描画の激しく重いオブジェクトを
収めているのならわかるのだが、Stringでしょ?
0349デフォルトの名無しさん
NGNG応用事例(自前コンポーネント製作)の資料が異様に少ないのが残念だよね…Delphiの資料は多いんだけどなぁ…
ここの板みたいな存在は貴重だね
0350デフォルトの名無しさん
NGNGDelphiの方に圧倒的にユーザーが流れているからだろ・・・・それに、VCLに関する
質問なら、Delphiに翻訳してから質問すれば、すぐ答えが返ってくる。
0351デフォルトの名無しさん
NGNG0352債務不履行の名無しさん
NGNG0353債務不履行の名無しさん
NGNG0354デフォルトの名無しさん
NGNGCommaText
0355デフォルトの名無しさん
NGNGやっぱり、DelimitedTextの方がいいや。
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString text = "123,45!6,789";
TStringList* ts1 = new TStringList();
TStringList* ts2 = new TStringList();
ts1->CommaText = text;
ts2->Delimiter = '!';
ts2->DelimitedText = text;
StringGrid1->Rows[0] = ts1;
StringGrid1->Rows[1] = ts2;
delete ts1;
delete ts2;
}
0356債務不履行の名無しさん
NGNGありがとうございます。
0357債務不履行の名無しさん
NGNGありがとうございます。
0358デフォルトの名無しさん
NGNGどうすれば発生するようになるのでしょうか?
0359デフォルトの名無しさん
NGNG最新版にはそんなのがあるんだ。
BCB5->6の変更点で初めてうらやましく思った。
でも"で囲まれたところはやっぱり分割されないんだろうな…。
0360デフォルトの名無しさん
NGNG>(中略)
>QuoteChar プロパティを使うと,DelimitedText プロパティで各文字列を囲むのに
>使われる引用符を取得および設定できます。
というのが・・・あれ? "〜" 内に区切り文字があったら分割される方がいいの?>>359
0361デフォルトの名無しさん
NGNG>(中略)
>QuoteChar プロパティを使うと,DelimitedText プロパティで各文字列を囲むのに
>使われる引用符を取得および設定できます。
というのが・・・あれ? "〜" 内に区切り文字があったら分割される方がいいの?>>359
0362デフォルトの名無しさん
NGNGQuoteCharに'\0'を設定すれば、引用符は無視されるよ。
0363デフォルトの名無しさん
NGNG例えば表示している掲示版とかに書込みをするときとかに
エンタキーを押しても何も反応しないんですよ・・
これって受け付けるようにする方法はありますか?
0364デフォルトの名無しさん
NGNGのGLPNGを使ってPNGファイルを読み込みたいんですが、
ライブラリがうまく入りません。
coff2omfでglpng.libとglpngd.libを変換してみたのですがうまく変換できていないみたいで、
512Byteのファイルが出来上がるだけです。
もちろんそのまま\libに持っていってもだめでした。
うまくライブラリを入れる方法はありますでしょうか?
#エディタでソース書いてコマンドラインでmakeなのでBCCでも良かったり・・・
0365364
NGNGごめんなさい
0366デフォルトの名無しさん
NGNGソースが付属しているので、makefileをいじって新たにLIBファイルを作成したら?
0367デフォルトの名無しさん
NGNGhttp://www.zdnet.co.jp/news/0212/14/nebt_05.html
I have not words...
0368デフォルトの名無しさん
NGNG∧_∧∩ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( ´∀`)/<先生!こんなのがありました!
_ / / / \___________
\⊂ノ ̄ ̄ ̄ ̄\
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
http://freehost.kakiko.com/hiroyuki/
0370デフォルトの名無しさん
NGNGTLIBはobjファイルをライブラリに追加する際に"+"記号をobjファイル名の前に
付けなければいけない事だけ注意すれば、割と楽に変更できました。
0371デフォルトの名無しさん
NGNGその他、再ビルドにはglut.hが必要な他、若干ソースをいじらなければいけないので、
↓のホームページを参照の事。
http://hem.passagen.se/roquero/borland_glut.htm
0372デフォルトの名無しさん
NGNGTWidgetControlから派生したためにUpdateMask等をTCustomControl(qcontrols.hpp)を見真似で以下のように自前実装しています。
{
Qt::QBitmapH *bitmap_h; Qt::QPainterH *painter_h; TCanvas *canvas;
if(!Masked || !HandleAllocated()){ return; }
bitmap_h = QBitmap_create(Width, Height, true, QPixmapOptimization_DefaultOptim);
try{ painter_h = QPainter_create(bitmap_h, Handle);
try{ canvas = new TCanvas();
try{ canvas->Start(false); canvas->Handle = painter_h; DrawMask(canvas); canvas->Stop();
}__finally{ delete canvas; }
QWidget_setMask(Handle, bitmap_h);
}__finally{ QPainter_destroy(painter_h); }
}__finally{ QBitmap_destroy(bitmap_h); }
return;
}
QBitmap_create等がqt.hpp(29067行)中で
#pragma option push -w-inl
inline QBitmapH* __cdecl QBitmap_create(int w, int h, bool clear, QPixmapOptimization p4)/* overload */
{
return QBitmap_create(w, h, clear, p4);
}
#pragma option pop
と宣言されているため、ネストして展開されてしまいスタックオーバーフローを起こしてしまいます。
ここでreturnされてるQBitmap_createは本来なら9775行目の
extern PACKAGE QBitmapH* __cdecl QBitmap_create(int w, int h, bool clear, QPixmapOptimization p4)/* overload */;
を指すと思われるのですが解決方法が見当たりません。どなたか御存知ないでしょうか?
0373デフォルトの名無しさん
NGNGBcbが原因でエラーが発生しました と出るんですがどうしたら・・・
0374超初心者
NGNGvoid voice_change(int rx_flag, int tx_flag)
{
int size = BUFFSIZE; /* size of buffer to be processed */
int* src; /* pointer to the data source */
int* dst; /* pointer to the destination */
↑これの意味を教えてください、
0375デフォルトの名無しさん
NGNGネタかな。
釣られた予感
0376デフォルトの名無しさん
NGNG改行文字って言うんだよボウヤ
0377債務不履行の名無しさん
NGNGint* a, b; とすると,b が int へのポインタだと勘違いする馬鹿がいるから。
0378デフォルトの名無しさん
NGNGその馬鹿は俺のことでつか?
0379デフォルトの名無しさん
NGNG0380デフォルトの名無しさん
NGNG0381債務不履行の名無しさん
NGNG自己レス
スレ違いでした。
↓
ソースの見た目効率を語るスレ
http://pc3.2ch.net/test/read.cgi/tech/1002252975/628
0382デフォルトの名無しさん
NGNGエラー出ないよ。もしかしたらServicePack違いかもしれないから、このスレを
よく読んでSP3相当にしたらどう?
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Graphics::TBitmap* tb = new Graphics::TBitmap;
ImageList1->GetBitmap(0, tb);
Image1->Picture->Bitmap = tb;
delete tb;
}
0383デフォルトの名無しさん
NGNGスレ違いでもいいから>>378-379を罵倒してほしかった・・・俺が378なわけだが。
0384デフォルトの名無しさん
NGNGないかと思って探したのですが、見つけきれなかったので、ちょっと質問
させてください。
C++Builder6を先週購入して、チュートリアルを見ながら少しずつ試して
いるところです。
クイックスタートに載っているテキストエディッタのサンプルを試していて
気がついたのですが、『開くコマンドのイベント作成』(4-26)で、
RichEdit1->Lines->SaveToFile( ) を呼ぶように書かれています。
このままだと、ダイアログでファイルを選んで何かファイルをオープン
しようとすると、いきなりその選んだファイルに対して、現在の
テキストを上書きしてしまいます。(実際、既存のファイルを上書きされて
しまいました)
これ、本当は、LoadFromFile( ) が正しいと思うのですが、どうでしょうか?
0385デフォルトの名無しさん
NGNG正解。
ちなみにヘルプの方は LoadFromFile になってる。
0386384
NGNGおお!? ヘルプファイルにはちゃんと書いてあったんですか・・・
(起動中 → ヘルプを確認)
はい確かに、ちゃんと書いてありました。情報ありがとうございます。
ファイルを開いても画面のテキストが変わらないからしばらく悩んで、
何度か試すときにいくつかファイルを『開いて』しまったので、ちょっと
ショックです(苦笑)。
0387デフォルトの名無しさん
NGNG自分は一体何をしようとしているのか、を理解しながら進めるのも大事だよ。
と、職場の糞ジジイ共に言ってるのだが、全くわかってくれない。
0388デフォルトの名無しさん
NGNG0389デフォルトの名無しさん
NGNGエディットもできなくなっていい?
0390384
NGNGごもっともです。実は、やっている途中で、「何か変だな?」という気はしたの
ですけど・・・ (負け惜しみ)
チュートリアルを見て打ち込みながら、「ああ、練習用のサンプルだから、
ユーザーへの確認とかは省略しているな」「ちゃんと作るなら、untitled.txt は
番号つきにして、新規作成ボタンを押すたびに数字を増やすほうがいいな」
なんてことは考えながら作業していたのですが、SaveToFile は、コード補完
機能を使って意味を考えずにそのまま打ち込んでしまいました。まあ、消えた
ファイルはどうでもいいテキストだったので、実害はないんですが。
まあとにかく、せっかくいい道具が手に入ったので、これから色々勉強して
いくつもりです。
0391デフォルトの名無しさん
NGNGほんとに金出して買った?
0392デフォルトの名無しさん
NGNGまてまて・・・ 初心者的な質問だからといって、割れ物ユーザーとは限らないぞ。
もし割れ物ユーザーだったらヘルプしか見れないから、印刷物のクイックスタートの
誤植にひっかかることはあるまい。
0393デフォルトの名無しさん
NGNGあー、いえ、エディットはしたいです。
何かいい方法はありますか?
0394デフォルトの名無しさん
NGNGすごく使いづらそうなソフトを作ろうとしている予感…。
0395デフォルトの名無しさん
NGNGサブクラス化するか派生コンポーネントで、
WM_COPYやWM_PASTEを処理しなければいい。と思う。
0396デフォルトの名無しさん
NGNGあらあら、随分と狭い視野だことw
>>395
ありがとうございます。
0397デフォルトの名無しさん
NGNG書き方からして、すごく使いづらそうなソフトしか作れない人の予感…。
0398384
NGNG野次馬根性で聞くんですが、わざわざコピー&ペーストを禁止する必要が
ある用途というと、どんなものがあるでしょうか?
ちょっと考えてみたんですが、例えば、
「メールアドレスなんかを念のため2回入力させるとき、確認用の欄に
最初の欄の文字列をコピペされては困るので、必ずキーボードから
2回打ち込ませるようにする」とか?
>>391
ちゃんと買いましたよ(苦笑)。代金の引き落としは来月だから、厳密に
言えばまだお金は払っていないですけど。
0399デフォルトの名無しさん
NGNG私は客に言われた通りにするだけで、用途はいまいちわからないが
なんか特定の項目をコピペ禁止にしてくれって言われたから。
0400デフォルトの名無しさん
NGNG(゚Д゚;≡;゚д゚) 400と・・・
./ つ つ
〜(_⌒ヽ ソロリソロリ
)ノ `J
0401デフォルトの名無しさん
NGNGハメ込み型のフォームを作りたいと思って調べたのですが、全くわかりませんでした。
どのようにすればできるのか教えて頂けないでしょうか?
0402デフォルトの名無しさん
NGNGTTreeView。
ディレクトリ構造を表すならTDirectoryListBox。
0403デフォルトの名無しさん
NGNGTNMSMTPコンポーネントでメール送信ソフト作成していますが、
subjectのみ文字化けします。
Content-Type,,,ISO-2022-JPは本文だけに効くようで。
添付ファイルやCCは使用しません。
BCB5です。よろしくお願いします。
0404デフォルトの名無しさん
NGNGrfcに仕様が書かれてましたよ。
0405デフォルトの名無しさん
NGNG適当にぐぐれば、簡単に見つかるよ (↓はそのうちの1つ)
ttp://x68000.startshop.co.jp/~68user/webcgi/mail-2.html
x68000とかなってるけどメールのルールは同じなので参考にすれ
0406デフォルトの名無しさん
NGNG実現してみました。
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
// サブクラスを登録する
OldEditWndProc = Edit1->WindowProc;
Edit1->WindowProc = EditWndProc;
}
void __fastcall TForm1::EditWndProc(TMessage& Msg)
{
// マウスの右ボタンを無効にする
if (Msg.Msg == WM_RBUTTONDOWN);
// キーが押されたらクリップボードをクリアする
else if (Msg.Msg == WM_KEYDOWN)
Clipboard()->Clear();
else
OldEditWndProc(Msg);
}
もしくはOnKeyDownでCTRL+Cが押された時だけクリップボードを
クリアするようにしても良いと思います。
0407デフォルトの名無しさん
NGNG0408デフォルトの名無しさん
NGNGどのようにするのでしょうか?
0409デフォルトの名無しさん
NGNGその戦いの歴史は、まさに近代兵器の見本市だった
田代砲にはじまる数々のスクリプト兵器を経て到達した、97式アラファトマシンガン
これはまさに最終兵器として、猛威を振るった
しかし、ついにTIMEはこれらの兵器全てを完膚無きまでに無効とする
パプリカの設置に成功した
武器を奪われた我々に残されたもの ・・・それは「チョップ!」
手動で一撃一撃叩き込む「チョップ!!」地味で威力も極限まで小さな「チョップ!!!」
ただそれだけと、なってしまった!
だが、チョップといえども決してバカには出来ないということを!
そしてこのような手段にまで出たTIMEを今一度!
我が2ちゃんねらーの総意を込めたチョップを以て、叩き壊したい!!
有志たちの参戦を、ひとりでも多くの戦士の挑戦を待つ!!!
http://live.2ch.net/test/read.cgi/festival/1040349157/
0410デフォルトの名無しさん
NGNG他のアプリでコピーしてた内容も(・∀・)キエチャウYO!
0411403
NGNG0412デフォルトの名無しさん
NGNG荒らしツールか広告書き込みツールぐらいしか使い道を思い付きません。
0413デフォルトの名無しさん
NGNGひょっとしたら、>409 は、そのサンプルかも。
0414デフォルトの名無しさん
NGNGいや、mamimiみたいなのを考えているとか・・・
で、OpenJANEのソースを見ればいいのではないか?
0415デフォルトの名無しさん
NGNGhttp://bdn.borland.com/article/0,1410,20164,00.html
のソースをコピペってみたのですが、
TJPEGImage *jpg = new TJPEGImage();
の行で
> [C++ エラー] Unit1.cpp(65): E2451 未定義のシンボル TJPEGImage
というエラーが出てコンパイルできません。
TJPEGImageを使うのに、何かをしておく必要があるのでしょうか?
0416デフォルトの名無しさん
NGNG0417デフォルトの名無しさん
NGNG根本的なところから・・・
0418415
NGNG即レスありがとうございます。その通りでした。
>>417
すみません…
一応TJPEGImageのところのヘルプは読んでみたのですが載っていないようでした。
http://www.borland.co.jp/qanda/cbuilder/c0009458.html
こちらに書いてあることもよく分からなかったので…
こういう情報はどこを調べれば良いのでしょう?
0419デフォルトの名無しさん
NGNG0420デフォルトの名無しさん
NGNGそれは嘘ですよね?
0421デフォルトの名無しさん
NGNG1:まずはスペルミスをチェック。
2:必要なファイルがincludeされているかチェック。
3:includeするファイルが判らなかったらヘルプなどで調べる。
4:ヘルプが頼りにならなければincludeファイルのフォルダをgrepしてincludeするファイルを特定する。
0422デフォルトの名無しさん
NGNG0423デフォルトの名無しさん
NGNGたもので、最近独学でC++Builder始めたんですがこれでよいの
でしょうか。VC++.netやらC#はなんだか変な方向に進んでいる
感じがして、とりあえずC++ってことでCPBにしたんですが。
自分では気に入ってます。
その前にVBばかりやらせるような会社自体将来が無いのでしょ
うか。制御系のアプリケーションが中心で、いくらなんでもVBでは
苦しいだろって規模のアプリケーションもVBでやっちまうんですが。
0424デフォルトの名無しさん
NGNGもしくは>423に日本語化パッチを(ry
0425デフォルトの名無しさん
NGNGそうですか、大変ですねぇ。
↓次どうぞー
0426デフォルトの名無しさん
NGNG0427デフォルトの名無しさん
NGNG0428デフォルトの名無しさん
NGNGA:はい何ですかぁ
Q:会社でVBばかりやらされていて将来に不満を感じてたもので、
A:将来に感じる不満とはどんな食べ物ですか。どんな味がしますか???おいしいですか。
Q:最近独学でC++Builder始めたんですがこれでよいのでしょうか。
A:将来に感じる不満を解消してくれる予定ですか。未来のことなので変な日本語になってしまいます。
Q:VC++.netやらC#はなんだか変な方向に進んでいる感じがして、
A:変な方向とか・・・漠然としすぎていますね。もっと具体的に考えましょう。
Q:とりあえずC++ってことでCPBにしたんですが。
A:あっそ
Q:自分では気に入ってます。
A:よかったね
Q:その前にVBばかりやらせるような会社自体将来が無いのでしょうか。
A:あなたの将来が無いのはよくわかりますが、会社の将来まではわかりません。
Q:制御系のアプリケーションが中心で、いくらなんでもVBでは苦しいだろって規模のアプリケーションもVBでやっちまうんですが。
A:何故VBを選択しているのか、その理由を聞いたことさえ無いのですか。
0429デフォルトの名無しさん
NGNGまずは、とりあえず質問文を勝手に整理。何が聞きたいのか、よく分からない。
-----------
あのう、ちょっと相談に乗っていただけないでしょうか? 私は現在、会社の仕事としてVB
ばかりやらされていますが、VBだけしかできないままでは、この先ちゃんとやっていけるだ
ろうかと、将来に不満を感じています。
そこで、独学で BC++ Builder の勉強を始めました。
もちろん、VBと同じMSの開発環境である VC++.net や C# も考えたのですが、これらに
ついては、どうも方向性がつかめなくて変な感じがしたので、とりあえずC++ということで、
BC++ Builder にしたのです。私は、BC++ Builder は気に入っています。
ところで、私の今の勤務先についてなのですが、VBばかりやらせるような会社自体将来が
無いような気もするのですが、皆さんはどう思われますか? 私の会社の仕事は、もっぱら
制御系のアプリケーション開発が中心です。かなり大規模な、「これは、いくらなんでもVBでは
苦しいだろう」と思われるようなアプリケーションでさえも、VBでやってしまう会社です。
よろしくお願いします。
----------
ううむ。少なくとも、「C++ Builder に関する質問」が、どこにもないということだけは判明しました。
もしかして、VBスレ向けか、もしくはプログラマ板、転職板向けの質問ではないのか? これ?
0430デフォルトの名無しさん
NGNG将来を気にするのならば、異業種に転職しましょう。
0431デフォルトの名無しさん
NGNGVBだけを習熟していくことに不安を感じ、
BCBをやってみようと思った。
BCBに将来性はありますか?
0432デフォルトの名無しさん
NGNG前半は、たぶんそれ。
後半は、勤務先への不満かな?
気持ちは分からんこともないけど、423には、もっと別な部分に
不安を感じるなぁ・・・
0433デフォルトの名無しさん
NGNGで、このご時世だからいつ競争相手が出ないとも限らないし、
巧いがま口は、そういう競争相手一つで簡単に壊れるからね。
だから気持ちが焦ってるって事でしょ。
ただ、この不況だから、BCBをやっても仕事は無い というか道具が仕事を
連れてきてくれる時代は終ったのだと気付かなきゃね。
0434デフォルトの名無しさん
NGNGHWNDを引数とするAPIがあるのですが、それには何を与えればいいのでしょうか?
0435デフォルトの名無しさん
NGNGAllocateHWnd で見えないウィンドウを作るとか。
■ このスレッドは過去ログ倉庫に格納されています