1 名前: ◆XcB18Bks.Y mailto:sage [2008/03/12(水) 21:09:39 ] Delphi(デルファイ)について、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を 勇気を持って書き込むスレッドです。 Delphi使いが優しくコメントを返しますが お礼はDelphiの布教と初心者の救済をお願いします。 <前スレ> くだすれDelphi(超初心者用)その45 pc11.2ch.net/test/read.cgi/tech/1198802907/ <過去スレ> DelWiki避難所(Delphi 関連の過去スレッド) delwiki.info/?Delphi%20%B4%D8%CF%A2%A4%CE%B2%E1%B5%EE%A5%B9%A5%EC%A5%C3%A5%C9
577 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 23:17:48 ] 7では無理
578 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 23:35:45 ] >>577 まじでぇえええええ^^ あり;;
579 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 09:30:11 ] >>575 ダイアログを表示しているフォームのOnHelpでも、TApplicationのOnmessage でMsg.messageをWM_HELPで判定しても procedure WMHelp(var msg: TMSG); message WM_HELP;をprivateで宣言して やってもひろえていないようです。どうして?
580 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 11:21:00 ] >>579 TApplication.HandleにRegisterWindowMessage(HELPMSGSTRING)で送られてるみたいだが
581 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 16:08:54 ] >>580 ありがとう。でも分からなかったです。とほほ
582 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 17:25:29 ] >>581 WinspectorとかでTApplicationの持つウィンドウのメッセージ監視すれば引っかかるはずだよ。 TApplication.OnMessageでは引っかからないからTApplicationのウィンドウをサブクラス化しないと受け取れないかも。
583 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 20:07:13 ] というかダイアログのHelpContextを設定しておけば Application.HelpFileで指定しといたヘルプ (の該当するトピック)を開いてくれるんだが。 それ以外のことをやりたいわけ?
584 名前:デフォルトの名無しさん mailto:sage [2008/05/08(木) 07:27:53 ] TApplicationのウィンドウプロシージャーなら、Application.HookMainWindowでOK. WM_COMMANDもどこかのウィンドウに送られている。(ダイアログのトップレベルのウィンドウかも)
585 名前:デフォルトの名無しさん mailto:sage [2008/05/08(木) 08:10:53 ] 色々ありがとうございます。ちなみにHTMLヘルプなもんで…HelpContextでは うまくいきませんでした。それから Application.HookMainWindow も少しだけ 試したんですが。もう少し気合入れて調べてみます。
586 名前:デフォルトの名無しさん mailto:sage [2008/05/08(木) 22:12:24 ] TBXを配布しているサイトが見れないのですが、TBXを再配布しているサイトはないのでしょうか?
587 名前:デフォルトの名無しさん mailto:sage [2008/05/08(木) 22:34:11 ] 微妙にバージョン違い? ttp://www.torry.net/pages.php?id=16#7246
588 名前:デフォルトの名無しさん mailto:sage [2008/05/08(木) 22:54:06 ] ありがとうございます 使ってみます
589 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 02:44:36 ] type TSettings = class published property Min: Integer; property Max: Integer; property Text: String; property Switch: Boolean; end; といったプロパティをINIファイルに自動的に読み書きさせるコードのサンプルってないのかな。 WriteComponentだとプロパティの追加削除ですぐ例外吐くから使えない。
590 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 03:55:41 ] そのWriteComponent内で呼ばれるTWriterのコードでも見たら? まさにそのものをやってるメソッドがあるから
591 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 04:46:57 ] TPersistentから継承しなくても良かったっけ?
592 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 05:04:16 ] 誰か例のTGifImageの脆弱性なおしておくれ
593 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 08:06:58 ] JaneStyleはTGifImageを修正してるみたいですね
594 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 09:37:06 ] gifimage.pasの5992行から while (code >= ClearCode) do begin //ここから if UINT(Source) > UINT(@stack[High(stack)]) then begin Dec(Source); Result := Source^; Exit; end; //ここまで Source^ := table1[code]; 検証お願いします
595 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 11:04:57 ] >>594 行けたぜGJ! でも俺の場合5873行なんだがこれはバージョンの違い? 一応2.2なんだが・・・
596 名前:Zzz [2008/05/09(金) 11:24:39 ] 質問お願いします Delphi7なんですけど (最大化最小化閉じるボタンを非表示などをした)Formを 同プロジェクト内の別のFormでも使いたくFormごとコピーして 使用したいのですがコピーやり方がわかりません どうやれば実現できるのでしょうか???
597 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 11:37:16 ] ExplorerでForm1.pas/.dfmをForm2.*にコピー&リネームして ファイル内のユニット名、クラス名、Nameプロパティ名を調整。 フォーム上のコンポーネントやプロパティの設定は.dfm イベントハンドラ等のコードは.pasにあるから適当に切り貼りしてもいいかも。 名前をつけて保存でForm2とかやっちゃうとForm1が破棄されForm2を使い出すからわけわかってないと悲惨なことに。 IDEでは使いまわし支援でリポジトリなるものをサポートしているけどほとんど使ったことない。 活用してる人っているのかね。 なんにしてもプロジェクト全体のバックアップをしてから試したほうがいいかもね。
598 名前:Zzz [2008/05/09(金) 11:40:36 ] やはり意外と、つらそうな道のりですね 了解しました 地味に作成しようと思います リポジトリの使用方法も忘れてつつあるので・・・ ありがとうございました
599 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 11:40:40 ] うちは5846行目だった TGIFSubImgae.Decompressプロシージャ内のNextLZW関数内だよね?
600 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 12:45:27 ] ver2.2のNextLZWの中です ASSERT(Code < TableSize, 'Code too large'); while (code >= ClearCode) do begin //ここから if UINT(Source) > UINT(@stack[High(stack)]) then begin Dec(Source); Result := Source^; Exit; end; //ここまで Source^ := table1[code]; Inc(Source); if (code = table0[code]) then Error(sDecodeCircular); code := table0[code]; ASSERT(Code < TableSize, 'Code too large'); end;
601 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 13:17:57 ] >>596 継承して使うと似たようなフォームで少しだけ違うような場合に便利だよ ファイル⇒新規作成⇒その他 で出たダイアログのタブの今のプロジェクト内から Form1を選んで 下の ・継承 を確認して [OK]
602 名前:Zzz [2008/05/09(金) 16:50:32 ] たびたびすいません 質問です リストボックスやコンボックスのItems欄に選択「文字」を追加する 方法が分かりません ・・・と書くとItem addとか思われると思いますが、もう一歩進んで その追加したを随時に追加し、且つ保存したいのです プログラムを終了させる、プログラムを起動させる 「追加したデータが消えてる(涙・・・」 どうやれば保存できるのでしょうか 最終的には、マイナーなコンポーネントに対し保存したいのですが 基本のリストボックスやコンボックスのやり方を教授していただければ 自分で考えますので(当たり前ですけど)ヒントの程お願い致します
603 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 17:09:42 ] 終了時にファイルに保存して起動時にファイルから読み込む。
604 名前:Zzz [2008/05/09(金) 17:23:32 ] >>603 おしい それも一つの手ではあるんですが、最終的にコンポーネントの Items欄に追加したいのでItems欄に保存する方法はないのかと 言うのを知りたいのです
605 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 17:31:18 ] 質問する前に日本語を勉強する
606 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 17:41:48 ] いまいちよくわからないがexeのどこかに保存されているであろうItemsのデフォルト値に対して保存・読み出ししたいってことか? もしそうなら、コンパイルする度に値が吹き飛ぶぞw
607 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 18:42:09 ] そういうことができるなら ini ファイルはいらんがな・・
608 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 18:57:18 ] リソースを書き換えたいのか? 出来るだろうが、なんでiniファイルは駄目なんだ?
609 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 21:18:12 ] 少なくともコード書いて試して 603 に対して「おしい」とかいってるのか? const DatEx='.dat'; var ListDat:string; procedure TForm1.Button1Click(Sender: TObject); begin ListBox1.Items.Add(Edit1.Text); end; procedure TForm1.FormCreate(Sender: TObject); begin ListDat:=ChangeFileExt(Application.ExeName,DatEx); if FileExists(ListDat) then ListBox1.Items.LoadFromFile(ListDat); end; procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin ListBox1.Items.SaveToFile(ListDat); end; ちなみにみんなの言っている「日本語でおk」は 「Items欄に保存」ってのがわからんってことだぞ
610 名前:Zzz [2008/05/09(金) 23:16:25 ] >>609 むむー ListBox1.Items.SaveToFile(ListDat); で行けるかも えっと Items欄に保存ってゆうのは・・・・・・ コンボボックスとかは、選択肢をItems.Addしなくても事前に入れて置けるじゃないですか(うろ覚えすまん) あれってPgで、あるボタンを押した時のイベントでItems.Addして追加しても、 Pg終了して、再度Pg再開してコンボボックスの中見ると消えてるじゃないですか(あたりまえですけど) つまり、そのItems欄の中にデータを残しておきたい訳です (↓コンボの中) にんじん だいこん トマト ↓(いもを追加) (↓コンボの中) にんじん だいこん トマト いも ↓(システム落として再起動) (↓コンボの中) にんじん だいこん トマト (がーん いもは・・・・・)
611 名前:デフォルトの名無しさん [2008/05/10(土) 00:01:24 BE:348454-PLT(12660)] iniかレジストリ使うのが普通じゃね?
612 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 00:55:11 ] 自分で言ってるけど消えるのは当たり前なんです そういうのは外部のファイルに記録しておいて 再開したときに読み込むのがいいと思います
613 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 07:42:56 ] だから、設計時に追加した情報は、コンパイルするとリソースとしてexeに含まれるの。
614 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 10:03:01 ] TIniFile使ってやるのが一般的じゃね? >>610 の気持ちもわからんではないが・・・逆にIDEで初期値を入れられるだけでも便利と思え! ListBox1.Items.Commatext:=ReadString('ListBox1','Items',''); WriteString(ListBox1','Items',ListBox1.Items.CommaText);
615 名前:デフォルトの名無しさん [2008/05/10(土) 10:27:37 ] dfmファイルを外部に持たせればOK.
616 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 11:28:00 ] 彡川三三三ミ 川出 ::::::⌒ ⌒ヽ パクリ星からやってきたお! 出川::::::::ー●-●-) ..川(6|:::::::: ( 。。)) パクリ星の王子様の◆Style/kK.sだお! 出川;;;::∴ ノ 3 ノ ノ\_;;;;;;;;;;;;;;;;ノ Janeスレ荒らしてるヒキコモリだから友達できないお! ( * ヽー--'ヽ ) (∵ ;) ゚ ノヽ ゚ ):) チンポは極小で包茎だお!!ちなみに童貞だお!! (: ・ )--―'⌒ー--`,_) (___)ーニ三三ニ-) (∴ ー' ̄⌒ヽωニЗ 好きなものは他人のソースとオナニーとwarezだお!! `l ・ . /メ / ヽ ∵ /~- /. 今日もたくさんソースパクリまくるお!! (__)))))_)))))
617 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 14:33:41 ] >>566 おー、Sliverpoint乙
618 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 15:14:34 ] >>587 今頃で申し訳ないんですがエラーが出てインストール出来ません・・・ d6perだからですかね?proだとインストールできるんでしょうか
619 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 16:15:29 ] >>618 alpha版はdel7から対応だったように思う 2.1beta1↓ ttp://www.fileup.org/fup183413.zip.html TB2Kのパッチは自分で探してね
620 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 16:15:47 ] >>619 passはtbx
621 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 16:22:52 ] >>619-620 わざわざうpしていただいてありがとうございます! インストールしてみます
622 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 16:46:04 ] インストールできました! ありがとうございました!
623 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 18:24:43 ] インストールできたのはいいんですがメニューがボタンのようになってしまいます・・・ これじゃ当初の目的が達成できないのですが、どのようにすれば普通のメニューのように出来るのでしょうか
624 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 18:28:59 ] すみません、自己解決しました・・・
625 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 18:30:40 ] わけわかんねー事言ってんじゃねぇよタコ 小学生からやりなおせ
626 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 19:07:00 ] 今小学5年生です・・・・
627 名前:デフォルトの名無しさん [2008/05/10(土) 19:15:49 ] 「相撲」って人気有るんだな 映画化されて・・・と思った・・・おれは小学生からやり直すべき?
628 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 19:17:12 ] 相模だろw
629 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 19:18:37 ] 意味の解らない俺はどれからやり直せばいいんだ?
630 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 20:02:46 ] アセンブラからだろ とーぜん
631 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 20:30:43 ] 精子から
632 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 20:42:11 ] Office2007でコンテキストメニューを表示したとき その上にツールバーも一緒に表示するUIが何気に便利なんだけど あれどうやって実現するんだろう。
633 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 21:24:25 ] 実現も何も・・ただそういうウィンドウを表示してるだけだよ。
634 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 03:52:32 ] うまく言えないんですがエスケープシーケンスのある文字列を変換するにはどうすればいいんでしょうか たとえばabc\ndefという文字列があった時に abc#10def(#10はもちろん文字列としてではなく)に変換するみたいなのです
635 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 03:56:24 ] お願いします。APIを使ったプログラムに不自由してるくらいの実力の者です。 d.hatena.ne.jp/Wacky/20080114/1200315830 ここのサイトの通りにTMemoに検索をつけてみたんですが、検索方向が下向きに検索できるのですが、上向きには検索できません。 どうすればできるようになるのでしょうか? ちなみに環境はWindowsXPHome,Delphi5Proです。
636 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 05:17:38 ] >>634 つStringReplace >>635 TFindDialog.OptionsにfrDownが設定されているかを確認して 自分で切り替える必要があります
637 名前:634 mailto:sage [2008/05/11(日) 05:27:03 ] >>636 一応\nだけではなくて\tとか漢字とかもエスケープされてるようなので使えないです・・・
638 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 07:56:46 ] >>637 つ正規表現 TRegExp
639 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 08:09:33 ] function DecodeEscStr(const s: string): string; var i: integer; begin Result := ''; i := 1; while i <= length(s) do if s[i] in LeadBytes then begin Result := Result + copy(s, i, 2); inc(i, 2); end else begin if s[i] = '\' then begin inc(i); case s[i] of 'x':try Result := Result + char(StrToInt('$' + s[i + 1] + s[i + 2])); inc(i, 2); except end; 'b': Result := Result + #$08; 'a': Result := Result + #$07; 'f': Result := Result + #$0C; 'r': Result := Result + #$0D; 't': Result := Result + #$09; 'v': Result := Result + #$0B; 'n': Result := Result + #13 + #10; else Result := Result + s[i]; end; inc(i); end else begin Result := Result + s[i]; inc(i); end; end; end;
640 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 08:11:02 ] >>634 はもしかして C言語スタイルの \ エスケープでエンコードされた 文字をデコードしたいって事じゃないかと思ってサンプルコードを書いてみた
641 名前:634 mailto:sage [2008/05/11(日) 08:27:34 ] >>638 TRegExpは何だかさっぱりであまり使ってません・・・ >>639 ,640 ありがとうございます 元のプログラムはCのようなのですがそれの仕様が良く分からないもので・・・ 一応「テスト」という文字が「\83e\83X\83g」になるということは分かってます
642 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 09:08:54 ] それは独自仕様って事だね。 'x':try Result := Result + char(StrToInt('$' + s[i + 1] + s[i + 2])); inc(i, 2); except end; この部分を '0'..'9' , 'A'..'F':try Result := Result + char(StrToInt('$' + s[i ] + s[i + 1])); inc(i); except end; とすれば、その部分には対応すると思うけど、他にも違いがありそうだね。 仕様が判ってるのはあなただけだから、自分でやってね
643 名前:634 mailto:sage [2008/05/11(日) 09:26:00 ] >>642 それで出来たようです! ご迷惑かけました! そしてありがとうございました!
644 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 12:15:59 ] フォームのボタンなどのキャプションに付けるアクセラレータって言うんでしょうか (&A)みたいにするとAltキーとAを一緒に押すとクリックされるやつですが、 コントロールが多くなってくると、どれが使われていないのか探すのが大変です。 便利なワザみたいなの、ありませんでしょうか。
645 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 12:40:14 ] ActionList
646 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 13:24:12 ] 適当に書いてみたが何気に便利かも・・・ 表示をまともにしてコマンドラインツールにして外部ツールとして実行できると使い物になりそう。 オープンダイアログで調べたいフォームのdfmファイルを指定するとこんな感じで出る。 C: Caption = '&ClickMe!' C: Caption = 'Button1(&C)' F: Caption = #12501#12449#12452#12523'(&F)' R: Caption = '&Run' X: Caption = #32066#20102'(&X)' procedure TForm1.Button1Click(Sender: TObject); var dfm, res: TStringList; i, idx: Integer; begin OpenDialog1.InitialDir := ExtractFilePath(ParamStr(0)); if not OpenDialog1.Execute then Exit; dfm:= TStringList.Create; res := TStringList.Create; try dfm.LoadFromFile(OpenDialog1.FileName); for i := 0 to dfm.Count-1 do begin idx := AnsiPos('&', dfm[i]); if idx > 0 then res.Add(UpperCase(dfm[i][idx+1]) + ':' + dfm[i]); end; res.Sort; ShowMessage(res.Text); finally dfm.Free; res.Free; end; end;
647 名前:デフォルトの名無しさん [2008/05/11(日) 18:17:09 ] 質問です。 TMemo に長いテキストを読み込ませたいのですが LoadFromFile で一気に読み込むと一瞬フリーズしたようになります。 そこで、スクロールに合わせて小分けに読み込むようにしたいのですが何か良い方法はありませんか?
648 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 18:50:47 ] >>647 マルチスレッド
649 名前:デフォルトの名無しさん [2008/05/11(日) 19:08:34 ] >>648 お答えありがとうございます。 ですが、メモリを節約して小分けに読み込み表示してスクロールバーの振る舞いはファイルサイズに合ったものにしたいのですが、どうにかなりませんか?
650 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 19:23:38 ] はなっからスクロールバーを適正サイズにしたいってこと?そりゃ無理。どれだけの行数があるのかは 読み込んでみないとわからないっしょ?
651 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 19:26:12 ] >>650 確かにそうですね。妥協することにします。 >>647 終了です。ご回答くださった方ありがとうございました。
652 名前:デフォルトの名無しさん mailto:sage [2008/05/12(月) 07:36:01 ] TStringListにいったん読み込めばいい。
653 名前:デフォルトの名無しさん mailto:sage [2008/05/12(月) 15:29:15 ] 複数キー入力を検出するにはどうすればよいでしょうか? Ctrl+Alt+Delとかのことです。 よろしくお願いします。
654 名前:デフォルトの名無しさん mailto:sage [2008/05/12(月) 15:31:32 ] そんな無作法なツールは死ねばいい
655 名前:デフォルトの名無しさん mailto:sage [2008/05/12(月) 16:01:57 ] >>653 TShiftState
656 名前:デフォルトの名無しさん mailto:sage [2008/05/12(月) 23:00:01 ] >653 検出はいいけど、何をしたいのか具体的に書いたほうがいいと思うが。 ちなみにCtrl+Alt+Delは捕捉できないので念のため。
657 名前:デフォルトの名無しさん mailto:sage [2008/05/12(月) 23:01:57 ] BBS へ行ったと思われ
658 名前:デフォルトの名無しさん [2008/05/12(月) 23:42:30 ] TMemo でスクロールせずに表示できる行数を知るには ClientHeight を Font.Height で割れば良いのでしょうか?
659 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 00:07:26 ] 1分で確かめられる事をわざわざ聞きにくるな
660 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 02:25:24 ] 1分使って自分で確かめるくらいなら2分使って質問を投げる勇気を私はもちたい。
661 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 03:02:10 ] :::::::::::.: .:. . ∧_∧ . . . .: :::::::: :::::::: :.: . . /彡ミ゛ヽ;)ヽ、. ::: : :: ::::::: :.: . . / :::/:: ヽ、ヽ、i . .:: :.: :::  ̄ ̄ ̄(_,ノ  ̄ ̄ヽ、_ノ ̄
662 名前:635 mailto:sage [2008/05/13(火) 12:49:06 ] >>636 ありがとうございます。帰ってやってみます。
663 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 21:40:18 ] これからDelphiをはじめる初心者ですが TurboDelphi用の初心者向け参考書はありますか? お勧めがあれば教えて下さい。
664 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 21:50:23 ] >>594 >>595 >>599 melander ってしらないうちにオンラインにカムバックしてたのね melander.dk/delphi/gifimage/ ここで各種 Delphi のバージョンアップ対応のメンテ版を公開していたので 同じ 2.2 でもバージョン違いが存在する www.tolderlund.eu/delphi/ で、そもそも TGIFImage は CodeGear に寄贈されて最新版の3.0は Delphi 2007 に同梱と
665 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 23:38:58 ] >>664 D2007のTGIFImage3も>>594 のはバグってる でも他のInterlaceなGifの問題は直ってたりするけど www2.ttcn.ne.jp/~honkawa/images/2770.gif
666 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 02:11:31 ] (;^ω^)今更ながらtypeとポインタが便利な事に気付いたwwww今まで時間無駄にしてたわwwwwwww
667 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 05:23:00 ] で、TGIFImage の開発元にフィードバックしたいのだが。 で、いくつか問題起こす gif を見ましたが、なんつーか児童ポルノに厳しい国でも レポートできるようなアニメーション GIF で再現できない物ですかねぇ
668 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 09:45:09 ] var Attr: Cardinal; dv: string; Attr:= GetFileAttributes(pchar(dv)); if (Attr and FILE_ATTRIBUTE_COMPRESSED) <> 0 then begin MessageDlg('Compressed.', mtError, [MBOK], 0); end; if (Attr and FILE_ATTRIBUTE_ENCRYPTED) <> 0 then begin MessageDlg('Encrypted.', mtError, [MBOK], 0); end; dv はドライブ名 C:\ or D:\ これで9x系のドライブスペースとNT系の圧縮フォルダとプロの 暗号化されたやつを判定できますか?
669 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 14:03:27 ] ウィンドウハンドルを指定してそのウィンドウのキャプチャをCanvasに描くのってどうやるの?
670 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 16:52:05 ] ランダムな2バイト文字を生成するにはどうすればいいんでしょうか
671 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 17:27:16 ] 'ランダム' お約束すぎた?
672 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 21:06:49 ] >>669 GetWindowRect(ハンドル,Rect); GetDC
673 名前:デフォルトの名無しさん [2008/05/15(木) 13:49:45 ] calendarExと言うdelphiのカレンダーコンポーネント使ってるんですけど Appendで特別な祭日(2008/5/6)の追加できたんですけど削除の仕方がわかりません^^; どうやればいいのでしょう すれ違いだと思いますが罠にもすがる思いで質問します
674 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 14:18:30 ] 罠にすがられたいという事なんで レスしてみる calendarEx と言われても、誰もが付けそうな名前なんで判らん。 とりあえず一番簡単なのは、Createをメソッドとして読んで 再度 設定しなおしたら駄目? レジストリやファイルに保存してないならだけどさ
675 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 15:30:39 ] 罠??? 糸・・・藁だ 藁 なるほどその手もありましたか このソフトなんか10年くらいの前のソフトらしく四苦八苦してます ヒントくれてありがとうございます ;;
676 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 15:51:13 ] >>670 全2二バイト文字を抽出しておいて、そこからランダムに選んだらどうだろう。
677 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 20:20:00 ] うーん、2バイト文字ってのも良く分からないけど 何でランダムに抽出したいのか、その使い道が気になるにょ