1 名前:デフォルトの名無しさん mailto:sage [2005/11/23(水) 23:31:08 ] Delphi初心者が問題をコツコツと解きながらレベルアップするためのスレです。
533 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 17:40:34 ] >DWORD(TColor($0000FF)); >DWORD($0000FF); 意味ねぇーー
534 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 12:35:55 ] >>533 「意味が無い」ことを説明してるんでは? TColorが上位、下位逆なのを説明されても理解できていない&認めようと しないのが多数居たのが驚き。 いや、それだけ初心者向けの言語ってことなんだろうな。
535 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 18:38:44 ] 多数じゃなくて、一人だけだろw
536 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 15:15:36 ] DLLを1つだけ LoadLibrary で読んでGetProcAddressして動かしてるプログラムがあります このDLLをリソースには入れれたのですが実行時にDLLをHDDに書き込まずに動かす方法があれば教えてください 環境は、WinXP,Delphi6です。。。ファイルをEXE1つだけにしたいだけなのですがお願いします
537 名前:536 mailto:sage [2008/03/15(土) 16:18:06 ] わざわざファイルに書き込まなくてもそのままでいけました。。。
538 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 20:09:45 ] GPL逃れですか?
539 名前:デフォルトの名無しさん [2008/03/27(木) 17:33:47 ] ほしゅ
540 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 06:48:24 ] >>534 間違っています。 以上。 ↓次どうぞ
541 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 15:44:57 ] ビルドした日付を埋め込むにはどうしたらいいですか? BCBの__DATE__みたいな奴です。
542 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:47:59 ] できないので手動で埋め込んでください。
543 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 10:01:18 ] $Iで埋め込んだらどうかな。 実験コード procedure TForm1.FormCreate(Sender: TObject); begin with TStringList.Create do try Add(''''+formatDateTime('yyyy/mm/dd',now)+''''); SaveToFile('Test.dat'); finally free end; Caption:={$I test.dat}; end; 名前付きパイプで、日付データを返すようなのを作って走らせて {$I \\.\pipe\DatePipe } とか
544 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 11:30:32 ] 名前付きパイプは上手くゆかなかった。 APIで読めば読めるけど、LoadFromFileでは読めない。 たぶんLoadFromFileではサイズを先に読んでから処理するからなんだろう。 だから $Iでも読めないかも
545 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 18:58:18 ] フォームに並べた10個のラベル (名前が label1,label2..label10 とかだとして) それぞれのラベルのCaptionにループを使ってアクセスするにはどうしたらいいんでしょう。
546 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:02:21 ] (FindComponent('Label'+IntToStr(LabelNum))as TLabel).Caption
547 名前:545 mailto:sage [2008/04/17(木) 21:33:34 ] 助かりました、ありがとうございました!
548 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 20:51:42 ] >>543 それを埋め込んだデルファイを起動するアプリを作っていいかんじになりました、どうも。
549 名前:デフォルトの名無しさん [2008/05/14(水) 16:04:58 ] TDrawGridのColやRowプロパティが変更する場合の、 イベントハンドラを教えてくださいorz
550 名前:549 mailto:sage [2008/05/14(水) 16:16:32 ] OnClickでできますた。
551 名前:デフォルトの名無しさん [2008/05/17(土) 13:45:07 ] Delphianが行方不明なのでこちらに質問させてください;; Stringでなく数値で操作できるGridコンポ探しています。 どなたかご存じないですか?
552 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 02:03:35 ] >数値で操作できる いみふめ 数値と文字列は相互可変なんだから TStringGrid でなにが不足なんだ?
553 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 10:57:12 ] セルの値を直接数値で入れたり出したりしたいんだろう。素人がしたがりたそうなことだ。
554 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 11:09:12 ] '0'..'9'のみ入れさせたいなら StringGridKeyPressイベントで if not (Key in ['0'..'9']) then Key := #0; とかやって入力を潰してしまえばいい。 ペーストも含めて対策したいならSetEditTextでゴミを取り除いてCells[]にセットしてやればいい。 他にもなんか対策すべきだったと思うが忘れた。 まあそこらへんのノウハウ込みのコンポを探してるんだろうが。
555 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 12:02:23 ] はい、日曜ど素人でございます(T_T) StringGridKeyPressとSetEditTextで新しいコンポを作れそうです。 ありがとうございました。
556 名前:デフォルトの名無しさん [2008/05/28(水) 18:57:24 ] TFileStreamでファイルをオープンして、 別のストリーム、たとえば、TContentStreamにファイルの中身を設定しようとすると、 どういった記述となりますか?
557 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 19:55:36 ] Assignを使う。どちらもTStream派生だから。
558 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 19:59:25 ] LoadFromStream はないの?
559 名前:デフォルトの名無しさん [2008/05/31(土) 02:17:47 ] グーグルマップに自分のブックマーク(っての?)残せるやん? ローカルの地図画像であんな感じのアプリを、db連動で作ってみたいんだけど、何を参考にすればいい? グラフィック関係かと思って、ゲーム関係見たけど、あまり参考になりそうにない。
560 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 11:48:36 ] 超初心者ですまん。 juni := member_suu + 1; for t := 0 to member_suu - 1 do begin for k := 0 to member_suu - 1 do begin if StrToInt(ListBox1.Items[t]) >= StrToInt(ListBox1.Items[k]) then juni := juni - 1; end; ListBox2.Items[t] := IntToStr(juni); juni := member_suu + 1; end; 上の関数で整数の特典に対して順位をつけたのだが、同点がおおくて1位等が重複してしまうので、 重複しないようにしたい。1位と2位の差はあまりこだわっていなく、名前順でいいしランダム(条件なし)でもいい。 アドバイスください。
561 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 14:38:25 ] ・名前順なら得点と名前をソートのキーとする ・ランダムなら、得点とランダム値をソートのキーとする
562 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 03:10:21 ] Jane Doe Styleのスレッド本文の表示には何のコンポーネントを使っているのでしょうか?
563 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 03:11:13 ] すみません、他で聞きます。
564 名前:デフォルトの名無しさん [2008/07/23(水) 17:05:00 ] Form に Formを貼り付けると、MainMenuが表示されませんねorz 表示させる方法はあるのでしょうか? 無ければ、Menuライクなコンポーネント?
565 名前:デフォルトの名無しさん mailto:sage [2008/07/23(水) 19:25:23 ] 何がやりたいの?
566 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 13:42:48 ] HKEY_LOCAL_MACHINE\SYSTEM\ControlSet***\Enum以下の レジストリを操作(キー・値の変更・削除)したいんですが SYSTEMユーザーしか操作権限がない状態です これらを操作する方法などありますか?
567 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 22:03:58 ] いやそれ操作したら駄目だろ。
568 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 11:06:01 ] やっぱりタブーなのね(´・ω・`)サーセンでした
569 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 14:37:09 ] なにしたいのよ?
570 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 14:57:37 ] テスト環境で設定したソフトの登録情報を 本番環境とごっそり置き換える作業をプログラム化したいんです。 今、それをするのに手作業(設定時なのでAdministrato)で レジストリのアクセス権つけて不必要な登録を消したりとかしてます。
571 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 15:14:04 ] それにしてもHKLM\System以下を書き換えるなんてのはありえないと思うが?
572 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 16:17:13 ] Enum\LEGACY*のいくつかにマシン名やコンピュータの設定が 刻まれているので消しているということらしいんですが (この辺がテスト環境と本番環境で変わってくるので変更したい) 実際には、その環境の情報を見てはいないんですが 消す必要がないのかな・・・
573 名前:デフォルトの名無しさん [2008/08/29(金) 00:44:34 ] 画像ファイル(bmp、jpg)をテキストデータとして扱うことはできませんか。 MIMEとか、ishのような感じで、当然、可逆変換で。
574 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 08:19:15 ] そのMIMEとかいshで変換すりゃあいいやん。意味不明。
575 名前:573 [2008/08/29(金) 19:31:44 ] ん〜と、簡易データベースみたいなのをつくろうとしてて、テキストフィールドに画像を「テキストデータとして格納」したいってことなんだけど、意味不明?
576 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 21:25:36 ] やっぱり意味不明かも。 まともなRDBMSならBLOB使うべきだし、 BLOB使えないなら別の名前を与えてファイルのまま保存、使うときは逆参照汁。
577 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 21:29:26 ] まあどうしてもやりたいなら止めない。 ttp://www.google.com/codesearch?q=BASE64+lang%3Apas この辺りでも参考にしてくれ。
578 名前:デフォルトの名無しさん [2008/08/31(日) 01:49:12 ] あ、俺は逆のパターンを知りたい。 文字列フィールドに入りきれない文字列を画像に変換してBLOBに保存する、って無理?
579 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 11:22:22 ] >>578 使用してるDBが分からないけど、Delphiからということを考慮するとFirebirdか? もしそうなら、難しいこと考えず、サブタイプが1(テキスト)のBLOG作ればいいんじゃないのかな? ほかのDBだと、 PostgreSQLはTEXT型があるから、意識する必要なし SQL Serverも、2005からVARCHAR(MAX)があるから、意識する必要なし MYSQLもTEXT型があるみたいだ ORCLE, DB2はシラネ
580 名前:デフォルトの名無しさん [2008/08/31(日) 11:37:40 ] >>579 ローカルで火鳥かMSQLか何かの組み込みエンジン(まぁ、これは何でもよい。)、相手先はOracle。 Oracleにはあらかじめ定義された文字・数値項目と画像の入力ができる。 しかし、設計が追いついていないため、利用者で必要な情報を入力する文字項目が足りない。 画像なら何十枚でも追加可能。 そこで、ローカル情報を画像に変換してオラクル側に画像として保存すれば、当面は事足りるってこと。 もちろん取り出したら、ローカル側では文字情報に戻す。 その時の変換作業用っていうか、状態確認用みたいなので、ローカルでも同じものを保存しておきたい。 と言うことなんだけど。
581 名前:デフォルトの名無しさん [2008/09/01(月) 07:15:35 ] EditでIMEがOn/Offで背景色を変えたいんだけど そういったサンプルコードないですか?
582 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 19:27:39 ] 無いな。だがヒントだけ教えてやろう。 IMEの状態が変わるときのメッセージ(WM_IME_NOTIFY)を受けたら IMEの状態を取得して、ONの時はColorプロパティを適当な色に変えれば良いんだ。
583 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 01:05:42 ] 処理が大まかに2つあってタイマーを使って繰り返したい(Intervalはどちらも同じで問題ない)場合 タイマーを一つだけ使うのと、処理それぞれでタイマーを作るのでどっちが一般的なんでしょうか? また、どっちが軽くなるんでしょうか? よろしくお願いします。
584 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 03:24:52 ] Intervalが同じならとりあえず一つで十分だろう。 タイマー二つまわすよりも一つの方が理屈としては軽い。 ただタイマーごときで重くなるようなPCは今時存在しない。
585 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 03:31:58 ] >>584 ありがとうございます! 助かりました
586 名前:デフォルトの名無しさん [2008/09/08(月) 08:07:01 ] あの・・単純な質問なのですが、TChartコンポーネントを使って 凡例を表示させると、凡例がグラフの裏側へと隠れてしまいます。 (枠の端っこのちょっとだけ見えている状態です) これをグラフよりも手前に表示させる方法を教えてください・・
587 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 20:01:27 ] ソフト公開所 namidame.2ch.net/test/read.cgi/mitemite/1220869722/ こういうスレつくってみた。
588 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 06:27:01 ] アップローダもなしに何をどう公開しろと・・・
589 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 14:49:55 ] 板違いで失礼します。 Linux環境にてDelphi互換のLazarusをインストールして使いたいと思い freePascal本体、Freepascalのソース、Lazarus本体をインストール致しました。 Lazarusは立ち上がり、ソース入力後 いざ実行というときに、コンパイラに弾かれてしまいます。 以下エラーメッセージです。 /usr/bin/ld: cannot find -lX11 project1.lpr(17,1) Error: Error while linking project1.lpr(17,1) Fatal: There were 1 errors compiling module, stopping リンク関係の設定を何かはじめに行なわないといけないのでしょうか? もし、ご存じの方いらっしゃいましたらご教授ください。 よろしくおねがいします。
590 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:39:03 ] >>589 とりあえずこういうスレがあるからそちらで聞くとよいと思われ。 【Delphi互換!?】FreePascal【GPL】 pc11.2ch.net/test/read.cgi/tech/1137051510/l50
591 名前:589 mailto:sage [2008/09/11(木) 09:58:00 ] >>590 ありがとうございました。 教えていただいた、スレを拝見致しまして 無事解決することができました!
592 名前:デフォルトの名無しさん [2008/09/12(金) 13:51:14 ] ウィンドウっとか、オブジェクトってフォームデザイナで作っておかないとだめなんでしょうか? ユーザーの処理にあわせて、新しいフォームを作り、そこに画像を表示させたいんです。 元々用意しとくんじゃなくて、いくらでも増やせていけるように。 たとえばフォトショップでいくらでも画像ひらいて、どんどんウィンドウ増えるじゃないですか。 あーいう感じです。
593 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 13:59:37 ] インスタンスをどんどん作ればいいじゃね? TForm1=class(TForm) end; forms: array of TForm1 SetLenght( forms, 10 ); for i := 0 to 9 do forms[i] := TForm1.Create( Self ); って感じで。 これだったら、デザイナで1つ作って、実行時は10個フォームが出きるが。
594 名前:デフォルトの名無しさん [2008/09/12(金) 15:03:51 ] ありがとうございます。 このフォームの上につくるオブジェクトもこれでOKですかね。 いわゆる動的生成をやるってことですよね?
595 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 15:13:38 ] そうです。 フォーム上のObjectが同じなら最初にデザイナで作っておく。 フォームごとに変わるなら、それぞれ、動的作成するんだけど、 動的作成しなければいけないObjectが多数ある場合は、 デザイナで作った方が簡単だと思う。
596 名前:デフォルトの名無しさん [2008/09/12(金) 15:49:30 ] ありがとうございました!
597 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 18:27:00 ] >>588 アップローダー作ったら公開してくれるの?
598 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 00:30:44 ] >>597 半年ROMれ
599 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 00:35:40 ] ---------半年後----------
600 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 00:47:11 ] 最終回か…。
601 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 21:18:10 ] あ
602 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 15:50:00 ] >>529 3の倍数はアホになれ
603 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 23:02:01 ] 十年ほど初心者やってるんですが、先ほどFastCodeを知り試してみました D5にFastCode.Libraries-0.6.4入れたらStrUtils.pasなど新しいものが入っていないので断念して 某所さんの古い記事にあった「詰め合わせセット RTL Replacement Pkg v0.3」を入れました >Delphi 4 以降に対応しています。私はまだ試していないのですが、Delphi 7 以前では特にお勧めだと思います。 とあったのですがやはりエラーの嵐でサンプルすらコンパイル出来ませんでした どなたかD5で使っておられる方は居ませんでしょうか? D2007も持ってはいるんですが起動時間や手軽さからD5は手放せないのです
604 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 23:27:22 ] すなおにD2007
605 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 23:29:02 ] >>603 D5持ってたらなんなの?
606 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 23:35:15 ] >>604 D2007ではFastCodeの効果ありますでしょうか?
607 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 23:35:47 ] >>605 いえ、FastCodeの話です
608 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 00:44:33 ] D2007はFastCodeもFastMoveもFastMMも採用済みじゃなかったっけ?
609 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 02:09:08 ] FastCodeのAnsiStringReplaceは「Ansi」って付いてるけど マルチバイト非対応なんで気を付けてね
610 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 09:14:53 ] FastMMは使ってるから何か分かるが、 FastCodeとかFastMoveって何?
611 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 10:24:37 ] グーグレ
612 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 14:31:52 ] >>610 標準のシステムの関数を速いのにおきかえたものただし>>609 の問題があったはず
613 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 11:32:01 ] バグ恐いからFastMMしか使ってないな
614 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 18:23:00 ] ちょうどCompareMemがネックになってたんでちょっと使ってみるかな。
615 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 13:17:57 ] >CompareMem kwsk
616 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 15:08:18 ] TMemoryStreamの先頭3バイト削除したりできますか?
617 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 00:23:17 ] だめです 先頭3バイト以降を別のStreamにコピーするとか MemoryをPCharにキャストして[3]とか
618 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 07:53:17 ] そもそもメモリを削除ってなによ
619 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 10:04:30 ] cのscanf相当の関数教えて
620 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 10:27:00 ] >>619 その前にそのscanfとやらが、Delphiでどの関数にあたるのかを説明してくれ。
621 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 15:21:45 ] >>619 ないはず
622 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 16:36:03 ] >>619 stdioはいまさらイランと仮定して、いっかい文字列に入れてから strtoint strtofloat strtocurr他で一個づつ変換
623 名前:デフォルトの名無しさん [2009/03/24(火) 14:32:45 ] TMemoryStreamでSizeを大きくしたら、大きくなった部分NULL埋めされるんでしたっけ?
624 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 15:18:41 ] >>623 試すのに1分もかからないと思うが、どうよ?