新C++Builder相談室
■ このスレッドは過去ログ倉庫に格納されています
0001新人
NGNGよろしくお願いします!
0681デフォルトの名無しさん
NGNGPanel がウィンドウコントロールで Image が非ウィンドウコントロールだからです。
違いを理解しましょう。
TWinControl のヘルプに書いてあることに加えて、
・親が同じ場合、ウィンドウコントロールは非ウィンドウコントロールよりも手前に来る
という特徴があります。これは覆せません。
0682680
NGNG>>643-649 を理解しないとダメなのかな?
いま自宅で、プログラムをいじれないんだけど、
(1)ボタンが押された。その処理をする
(2)Panelのvisibleをtrueにしたあと、Panel->SetFosus()する。
(3)Panelのvisibleをfalseにして、Imageを表示させる
という風にすればいいのかな?
0683デフォルトの名無しさん
NGNG理解しても結論が681になるだけ。
別解を提案してみる。
別のフォームを作ってそこにTImageを乗せる。
TImageのサイズにあわせてフォームをリサイズ。
フォームのBorderStyleをbsNoneにする。
本来TImageを置きたいフォームが表示されたら、今作ったフォームを表示する。
元フォームが移動したらそれに合わせて新フォームも移動させる。
こんなんどうよ?
0684Delフサギコ
NGNG∧,,∧ /まさか
ミ.,,゚Д゚彡< ButtonをSpeedButtonに変えたら
ミ つ目(ミ . \解決とかじゃないっすよね。
〜ミ,,O,,,,,,つ  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
フォーカス ハ イドウ シナクナルガ
Panelの上にImageを貼り付けるとか??
0685デフォルトの名無しさん
NGNGこら、フサギコ! せめて>>680くらいは読んでくれよ。
それから元々は>>639だ。
0686Delフサギコ
NGNG∧,,∧ / ̄ ̄ ̄ ̄ ̄ ̄
ミ ゚Д゚ミっ < 読んだつもりなんだけど、
|''U ̄| \______
| ̄ ̄|
/ ゙ヽ
( ゚Д゚ )
人____ノ
だから、Panelを二枚用意して
片方にalClientでTImageはっつけて
前にもってくりゃいいくない?
そもそも、Buttonをクリークして
Focusが移動しないSpeedBtn使ってはダメなん?
0687デフォルトの名無しさん
NGNGBCB4ってTPanelの上にTImage載せられるんだっけ?
D6では何も考えずに載るんだけど、>>680を読むと・・・。
0688Delフサギコ
NGNG〜′,,,,,,,,,,ミ,,゚Д゚彡 < >>680の状態は
UU"""" U U \Image1もPanel1もParentがForm1なんじゃない?
セツメイ メンドイ
Panel2を作ってその上にImage1をのせて(ParentをPanel2にして)
Panel1とPanel2とで重ね合わせりゃいいじゃん。
>>687
その辺りの仕様がVer4とVer6で変わるわけなっす
0689デフォルトの名無しさん
NGNGそういうことか。どうりで・・・。
>>640の言ってるのは「PanelにImageを載せる」であって「PanelとImageを重ねる」ではないぞ。
FormにPanelを置いてから、その上にImageを置くのだ。
煽ってすまん>フサギコ
でも、昔Panelの上に何かが置けなくてBevelに変更した覚えがあるのだが・・・。
0690680
NGNGとりあえず
>>682-683 の案と、SppedBottun を使うっていうのを試してみます。
>>683のは、具体的にどうプログラムを書けば良いのは
いまいちピンときませんが。ようは、
(1)大本のフォームと、(2)Image専用のフォームを作って、
状況に応じて(1)(2)の表示を切り替えるってことかな?
なんかややこしそうだ。
0691デフォルトの名無しさん
NGNGちょっと待って。
689の
>>>640の言ってるのは「PanelにImageを載せる」であって「PanelとImageを重ねる」ではないぞ。
>FormにPanelを置いてから、その上にImageを置くのだ。
を理解するのが先。これが理解できたら683はいらないはず。
0692Delフサギコ
NGNG∧,,∧,,,,,,,,,,,,,,, / とりあえず〜♪
ミ゚Д゚,,彡,,,,,,,,,,,,ヾ〜 < もそっとBCB使ってえ♪
U U """"UU \ 慣れましょ♪
0693639
NGNGえっと、今の状況は、MDIChildのウィンドウの上に
Panelを載せて、さらにその上にImageを載せています。
これと >>689 が言っているのは違うことなのかな?
SpeedBottunについて、ちょっと調べたのですが、
今やりたいことにはちょっと適さないみたいです。
0694デフォルトの名無しさん
NGNGそれでいいんだけど、
>が、Panel と Image を重ねると、Panel の方が上に来てしまうようです。
はどうなりました? ちゃんと載せていればこういう状況にはならないはず。
その話が690には書いてないので、「683を使うのはちょっと待って」と。
0696デフォルトの名無しさん
NGNG0697デフォルトの名無しさん
NGNG載せる==新規のコンポを子として登録する
重ねる==既存のコンポを同じ場所に配置する
きみは重ねてるだけじゃないの?
試しに、新規のTImageを既存のPanelの上に作成してごらん
0698デフォルトの名無しさん
NGNGパネルをマウス左クリック CTRL+V
これだけです
0699デフォルトの名無しさん
NGNGテキストでフォームを見ておきましょう
Imageがどこにどういうふうに入るかね
0700639
NGNG新規コンポをPanelの子として登録するには、
(1) まず、Panelをおく。
(2)次に新規ImageをPanelの上にDrag&Dropする
ので、いいのでしょうか?
あと、今までは、
Image1->Parent = Panel1
のような文を書いていたのですが、これでは、ImageをPanelの
子に設定したことにはならないのでしょうか?
上記3つを全部試してみましたが、どれもImageがPanelに隠されて
しまいました。何か根本的に間違っているのかな?
ちょっと出かけないといけないので、もうしばらくしたら落ちます。
0701デフォルトの名無しさん
NGNG×(2)次に新規ImageをPanelの上にDrag&Dropする
○(2)次にパレットからImageをクリック、(1)のPanel1の上でクリックする
Image1->Parent = Panel1 は自分で作成した場合
0702デフォルトの名無しさん
NGNG正しくは
object Panel1: TPanel
・・略・・
object Image1: TImage
・・略・・
end
end
のようにTImageがTPanelの入れ子になってないといけない
object Panel1: TPanel
・・略・・
end
object Image1: TImage
・・略・・
end
こういうふうになってるなら 上のように入れ子になるように直接編集すればいい
0703デフォルトの名無しさん
NGNG> のような文を書いていたのですが、これでは、ImageをPanelの
> 子に設定したことにはならないのでしょうか?
足りないよ!
C++ Builder の IDE(統合開発環境)は、
コンポーネントをForm上に登録するときに、
フォーム(ユニット)のcppファイル以外にも
自動的にいろいろ書いてくれています。
>>699 が言ってるものも、その一例。
> (2)次に新規ImageをPanelの上にDrag&Dropする
> ので、いいのでしょうか?
だ〜か〜ら〜
せっかく教えてくれている人の言うことを
ちゃんと聞いあげてよね…。
D&D だと失敗することがあるんだよ。
「新規コンポ」を何か(この場合は Panel )に GUI上で重ねて
あげる際に、Panel をアクティブにしておかないといけないわけ。
(そうしないと、偶然アクティブになっている他のものが
Parent になっちゃうからね。)
そういう作業をするとき、IDE の画面上だと、
(他の部品「新規コンポ」などのドラッグ中は)
どの部品がアクティブなのかを明示的に指定(クリック等)しておいた
効果が失せることがあるわけ。
(対象の部品の種類などによる)
>>698 が言うように、
1. Image をクリップボードにコピー。(マウス左クリック CTRL+X )
2. IDE 上の GUI で Panel をアクティブにする。(マウス左クリック )
3. Panel に クリップボードの内容をペーストする。(CTRL+V )
こうすればうまくいきますよ。
0704デフォルトの名無しさん
NGNG実行中にコンポーネントの前後(前面・背面)の順番を変えるには
どのようにすればよいでしょうか?
お願いします
0705Delフサギコ
NGNG(;;::; (::;; ( ;;::;; )
(::: (;;:: ;;;) :::::)
(;;: (::: (::;;; ;;;;)::;;;゙゙);;)
(,,゙:゙:;;;;;,,,(::;;;;;;;;);;;;;;:::):::;;;;)
ヾ(,,;;;;ノゝ::;;iii //;;;;)
ヾヽi:;;;iii|//
ヾ;;;iiiii/
|::;;;iii|
|::;;;iii|
|:;;;;iii| ∧ /よくまあ、そこまで
|;;;;iiii|Д゚ミ ∬ < 懇切丁寧に
|;;;iiii;| つ━┛ \教えられるなあ。。
|;;;iiii;|., ミ〜. フサ ニハ ムリ
.jrjjrj从wjwj从j
jwjjrj从jrjrj从jwjwjjr
0706Delフサギコ
NGNG_____
/:\._____\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|: ̄\ ミ,,゚Д゚ミ < BringToFrontとSendToBack
|: :|: ̄UU ̄:| \_________
0707デフォルトの名無しさん
NGNG0708デフォルトの名無しさん
NGNG抽象的なのは回答する気がなくなるけど、具体的な話ならね。
あと「助けてください」と書いてあると嫌。なぜだろう?
俺は毎回AAを貼るフサギコに感心するよ。
0709学習中
NGNGどうやって組み込んだらいいかわかりません。
--------------------------------------------------------------------------------
0710デフォルトの名無しさん
NGNG同情を引くための言い回しが形式化して
どうでもいい質問をすることの免罪符として使われるからじゃないかね。
個人的には 「助けて」 ってプログラムの質問に使うほど軽い言葉ではない。
初心者、至急、助けて と続けれられると 「チチキトクスグカエレ」 ほどの大事かと思ってしまう。
0711デフォルトの名無しさん
NGNG例えばボタンを押すとウインドウを最小化させるようにしたいのですが
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Form1->WindowState = wsMinimized;
〜
とすると画面の左下に小さいウインドウが出たままで
普通に最小化ボタンを押した状態になりません
ちなみにフォームのBorderStyleはbsNoneにしています
ご教授よろしくお願いします…
0712デフォルトの名無しさん
NGNG0713712
NGNG0714デフォルトの名無しさん
NGNGもしかして、MDI だったりして?
0715デフォルトの名無しさん
NGNGヘルプに例が出ているので、真似をしてみるとよいです。
「習うより慣れよ」とぞいひけるなり。
0717デフォルトの名無しさん
NGNGアプリケーションに対して Application->Minimize();
0719デフォルトの名無しさん
NGNG右上の「×」ボタンがクリックされたら終了確認のダイアログを出して
キャンセルされたら終了しないようにしたいのですが、
どうやったらいいんでしょうか?
0720デフォルトの名無しさん
NGNGOnCloseQuery
0721デフォルトの名無しさん
NGNGプロジェクトオプション→パッケージ→パッケージ再構築、の欄で
実行時パッケージを使って構築のチェックをハズスと、下記2関数が外部シンボル未解決、になります。
・SelectDirectory()
・DirectoryExists()
どうしたらいいんでしょうか。(どっちともFileCtrlっすよね...)
0722デフォルトの名無しさん
NGNG(´-`).。oO(ライブラリを参照できるようにすればいいのでは?)
0723デフォルトの名無しさん
NGNG#include <Filectrl.hpp>
ってやれば通るはずって思ってるんですが、バグっすかこれ。
ライブラリ参照の仕方ってどれをどうすればいいのでしょうか?
0724デフォルトの名無しさん
NGNG.h のほかの includeが並んでる所に追加してみたら?
0725724
NGNG0726723
NGNGできました!
CPPに追加していたのをHに入れたらOKでした。
んで、もいちどCPPに移してみたら両方通る...まいっか笑。
では。
0727デフォルトの名無しさん
NGNG(´-`).。oO(オブジェクトかライブラリのファイルがどこかのディレクトリに作成されたんだろ?)
0728726
NGNG0729ながいです。
NGNG「SendBuffer」および「ReadBuffer」について質問があります。
この2つのメソッドは、ヘルプや使用例では変数が2つしかないのに
実際にコンパイルすると「呼び出し時のパラメータがたりないぞぉゴルァ!」と
叱られてしまいます。そこでテキトーな整数を加えて変数を3つにすれば
コンパイルできるのですが、この3番目の変数にはいったいどのような数を
入れていいのかさっぱりわかりません。
コンパイルは出来てもわからないまま使うのは非常に不安なので、
教えていただける方は居ますでしょうか?
詳しくは下記の通りです。
===詳細===
この2つのメソッドはヘルプではそれぞれ
> procedure ReadBuffer(var Buff: array of char; var length: integer);
> Buff パラメータは,データの読み込み先のバッファを指定します。
> length パラメータは,読み取るデータのサイズを指定します。
とか、
> procedure SendBuffer(Buff: array of char; length: integer);
> Buff パラメータは,リモートホストに送信される文字の配列を指定します。
> length パラメータは,Buff パラメータのデータの長さを指定します。
と2つだけしかパラメータが要らないかのように紹介されており、
また、使用例の部分では
> NMUDP1.SendBuffer(C, 3);
やら
> NMUDP1.ReadBuffer(C, I);
見たいな書き方をしているので変数が2つなのかなって思ってました。
しかしこの書式でコンパイルすると
“[C++ エラー] Unit1_SendProgram.cpp(24): E2193 呼び出し時のパラメータが足りない:
_fastcall TNMUDP::SendBuffer(const char *,const int,int)”
と、怒られてしまいます。
なにやらコンパイラは3つのパラメータを要求しているみたいなのです。
しかし、3つめのパラメータに何を入れればいいのかを、
せめてヘルプに書いて欲しいのです。
この、3つめの変数にはどんな値をいれればいいのでしょうか?
ご存知の方、何卒、ご教示下さい。
0730デフォルトの名無しさん
NGNG0731デフォルトの名無しさん
NGNG別のノードの下の階層にコピーするなんていう事がしたいんですが
便利なメソッドとか知ってる方教えてください。
0732デフォルトの名無しさん
NGNGは、いつになったら追いつくのでしょうか?
0733719
NGNGできました。ありがとうございます。
ていうか、こんな探せば見つかるような質問しちゃってすんまそん。
0734729
NGNGヘッダーファイルは見ましたが、型くらい有効な情報がありません…。
なんだか2つ目の変数と3つ目の変数って、同じ意味のような気が。
0735デフォルトの名無しさん
NGNG(´-`).。oO( >>729 は何のファイルの何処を見たんだろ? )
小一時間、(略)
0736デフォルトの名無しさん
NGNGBuilderは使ってないけど、delphiのarray of charはポインタと長さの
両方を渡すからdelphi→c++の際に余計なパラメータがついたのかもしれない。
0737デフォルトの名無しさん
NGNGhttp://www.google.com/search?q=SendBuffer&hl=ja&lr=lang_ja
…の結果、一番上に
http://www.borland.co.jp/qanda/cbuilder/c0005144.html
質問の前にgoogleでの検索と、せめてBorlandのFAQくらいは目を通しておいた
ほうがいいと思うよ。嫌味じゃなくて、効率悪いでしょ。いちいち回答待ってちゃ。
0738729
NGNG"nmudp.hpp"というファイルの、137行目にSendBuffer()が、
139行目にReadBuffer()がTNMUDPクラスのメンバとして定義されて
おります。参照にしたのはそこです。
で、どちらかというとそのメソッドの内容がみたいのですが、
それはどこにあるのかわからないのです・・・。
"nmudp.hpp"にincludeされてるファイルはみんな見たのですが
SendBuffer()もReadBuffer()も、ありませんでした。
0739デフォルトの名無しさん
NGNGSendBuffer(const char * Buff, const int Buff_Size, int length);
バッファへのポインタと、バッファの大きさ(最大長)と、実際に送信したい
データの長さ。
ってところでしょう。
0740729
NGNGそ、そんな感じみたいです!助かりました!ありがとうございます!
ていうか、私もヘンに言葉で説明せずヘッダファイルの記述を書き込めば
よかったですね。
次質問する時は、もっと上手な質問の仕方ってやつを気をつけたいと思います。
0741737
NGNG(∩∩)
0742デフォルトの名無しさん
NGNGそのうちヘッダよみますね...FileCtrlの件の質問者っす。
0743デフォルトの名無しさん
NGNG0744729
NGNGごめんなさーい!仕事中、隠れながら2chやってたので、
IEの大きさをすごく小さくしてたら見逃してしまいました!
私も書き込む前に検索はかけたんですけど、そのものズバリな
こんなページは一番上ではなかったので、さっさと諦めて
書き込んでしまったわけです・・・。
0745デフォルトの名無しさん
NGNGぐあああああ。来月6発表かよ
今月5買っちまったよー。俺のために日本でのリリースは1年後をめどに進めてくれ
んじゃ
0746デフォルトの名無しさん
NGNGBCB/Delphiは Update1 が出てからが真の実用フェーズだ。
オレもBCB3からBCB5に移行したのは去年の秋からだ。
0747デフォルトの名無しさん
NGNG0748デフォルトの名無しさん
NGNG0749デフォルトの名無しさん
NGNGゎ-ぃ! ゎ-ぃ!
ゎ-ぃ! ゎ-ぃ! ゎ-ぃ!
ゎ-ぃ!ゎ-ぃ! ゎ-ぃ! ゎ-ぃ! ゎ-ぃ! ゎ-ぃ!
ゎ-ぃ!
ゎ-ぃ! ゎ-ぃ! ゎ-ぃ!
ゎ-ぃ! ゎ-ぃ! ゎ-ぃ!
ゎ-ぃ!ゎ-ぃ! ゎ-ぃ! ゎ-ぃ! ゎ-ぃ!
ゎ-ぃ!ゎ-ぃ! ゎ-ぃ!
ゎ-ぃ!
ゎ-ぃ!ゎ-ぃ! ゎ-ぃ! ぅゎ-ぃ!
犯罪者も読んでるらしいぞコレ。
http://www.puchiwara.com/hacking/
どうなんだろうか。
0750デフォルトの名無しさん
NGNG0751デフォルトの名無しさん
NGNG実際C++Builderのシェアってどれくらい?
0752はじめましてこ
NGNGgethostnameについて教えて下さい。
gethostnameでホスト名をGetしたいのですが
#include <winsock.h>
char szHostName[256];
int rs;
//ローカルホスト名取得
rs = gethostname(szHostName,255);
※ライブラリパスは$(BCB)\Lib\PSDKを指定しています。
上手くいけば戻り値は0らしいのですが
-1が返って来てしまいます。(T_T)
0753デフォルトの名無しさん
NGNG0754デフォルトの名無しさん
NGNGWSAGetLastErrorを調べてみるといいことあるかも?
0755デフォルトの名無しさん
NGNGWinSockは初期化しないとダメ。WSAStartupだっけ?
0756はじめましてこ
NGNGwsock32.libはE:\Borland\bcc55\Lib\PSDKの中に入っていましたので
$(BCB)\Lib\PSDKで良いかと思いますが・・・・・
WSAGetLastErrorですか?わかりました。
調べてみます。
0757はじめましてこ
NGNG初期化したら上手くいきました!
wVersionRequested = MAKEWORD(1,1);
nErr = WSAStartup( wVersionRequested, &wsaData );
ありがとうございました。m(_ _)m
0758デフォルトの名無しさん
NGNGおめでとう。分かってると思うけど、終了時には WSACleanup も忘れずに。
0759デフォルトの名無しさん
NGNG0760はじめましてこ
NGNGTNMUDPのOnDataAvailable イベントについて教えて下さい。
受信側サーバのプログラムを作成しているのですが
相手側からデータを受信した時の処理を下記の様に記述したいのですが
OnDataAvailableをどの様に記述したら良いのかわかりません。
TNMUDPのイベントには出てこないし
どなたか解る方教えて下さい。m(_ _)m
Private Sub udpServer_DataArrival(ByVal bytesTotal As Long)
'データが届きました
Dim strBuf As String
'相手アプリケーションの送信データを取得します
udpServer.GetData strBuf
lstRecv.AddItem udpServer.RemoteHostIP & ":" & strBuf
lstRecv.ListIndex = lstRecv.ListCount - 1
End Sub
0761デフォルトの名無しさん
NGNGhttp://www.watch.impress.co.jp/internet/www/article/2002/0129/borland.htm
http://www.borland.com/about/press/2002/cpp_appstrategy.html
0762デフォルトの名無しさん
NGNGいよいよですね。
早くほしいなぁ。
無料ダウンロードもあるといいね。
0763デフォルトの名無しさん
NGNGとりあえず、動作軽く&エディタもうちょっと
まともに使える物にしてくれsage...
0764デフォルトの名無しさん
NGNGエディタはDelを見ると期待薄
0765デフォルトの名無しさん
NGNG確かにそうかも・・・。
まあ、せめて軽くしてほしい。
0766Delフサギコ
NGNG|Д゚彡 コードホカン モオソイ BCB...(Del比)
| U
| ミ
| U D6デ コードホカン コウソクカ サレタケド(D5比)
BCB6ハ ハヤクナッテイルノカナ
>>794 ハテ?
エヂタ ジタイガ オソイカ?
0767764
NGNG「エディタもうちょっとまともに使える物」は期待薄って話。
たぶんフリーカーソルとかTAB表示とか、そういうことじゃないかな?
0768763
NGNG軽く=コード補完
エディタ=「結構使いやすい」って言える程度のもの期待〜
ってことです。
>766
D5はコード補完遅かったんですか?
D6ちょっとさわったことあるだけなんで違いわからず。
D6は早いっすね・・・。
0769デフォルトの名無しさん
NGNGコンパイルするくらいの時間はかかってるよ、あれ。
0770Delフサギコ
NGNG/ミ*゚Д゚ミ/\< 間違っってたのね
/| ̄∪∪ ̄|\/ \_____
|____|/
,,,,∪∪,,, ,,
コード補完
速:遅=D:BCBなので
D5→高速化→D6 の実績で
BCB5→高速化がどれほど?→BCB6
に期待age。
エディタはG-エキスパ&フリカソルアドインで
改善できないです?
入れてないなら、入れてみてください。
0771デフォルトの名無しさん
NGNG別のエディタでコード書き書き→BCB再起動→ビルド。
…効率悪い。
0772デフォルトの名無しさん
NGNG別に途中BCB終了させなくていいんでわ・・・
0773デフォルトの名無しさん
NGNG0774デフォルトの名無しさん
NGNGフリカソルアドインは入れてるけど、G-エキスパ入れてないです。
http://www.gexperts.org/
これですよね?
早速いれてみます。
フサギコさん、密かにファンっす(w
0775デフォルトの名無しさん
NGNGBCBを再起動せずにコマンドラインからコンパイルすれば?
0776デフォルトの名無しさん
NGNG「アプリケーションはこのドライバを使用する事が出来ません。」
というエラーメッセージが出て接続できません。
BDEAdministratorからは接続出来ています。エリアスの設定は正しいと思います。
何が悪いのかさっぱりわかりません・・・
環境は
Win2000Server
MSSQL2000
BDE5.2
C++Builder5 SP1
です。
0777デフォルトの名無しさん
NGNGもっとたくさんエラー情報を拾えるようなコードを書くべし。
0778776
NGNGエラー情報も何も、
TDatabase *db;
db = new TDatabase(this);
db->AliasName = "test";
db->DatabaseName = "test";
db = true;
のようなシンプルなコードでエラーになってしまいます。
エラー情報はどこから拾えばいいですか?
それと、データベースエクスプローラーや、
テーブルコンポーネントでテーブルを指定しても失敗します。
0779デフォルトの名無しさん
NGNG0780777
NGNG>>778
db = true;
じゃなくて
db->Connected = true;
なのでは?
あと、例外を捕まえたらすぐにエラー情報を獲得しないとダメよ。
■ このスレッドは過去ログ倉庫に格納されています