- 1 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 00:50:40 ]
- Delphi(デルファイ)について、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を 勇気を持って書き込むスレッドです。 Delphi使いが優しくコメントを返しますが お礼はDelphiの布教と初心者の救済をお願いします。 <前スレ> くだすれDelphi(超初心者用)その47 pc11.2ch.net/test/read.cgi/tech/1214292265/ <過去スレ> DelWiki避難所(Delphi 関連の過去スレッド) delwiki.info/?%E3%83%AA%E3%83%B3%E3%82%AF%2F%E3%82%B3%E3%83%9F%E3%83%A5%E3%83%8B%E3%83%86%E3%82%A3%2FDelphi%20%E9%96%A2%E9%80%A3%E3%81%AE%E9%81%8E%E5%8E%BB%E3%82%B9%E3%83%AC%E3%83%83%E3%83%89
- 496 名前:デフォルトの名無しさん mailto:sage [2008/12/17(水) 23:27:07 ]
- もう一つ質問すみません
クリティカルセクションはSyncronizeみたいにメインスレッドで実行するわけじゃないので、共用変数ごとに複数作っても問題ないですよね もちろん保護内では共用変数は一つしか使わないという条件でです
- 497 名前:デフォルトの名無しさん mailto:sage [2008/12/18(木) 00:16:02 ]
- >>496
もちろん可能だけど、(上で出た with のように)ちゃんと設計しないと 恐い恐いデッドロックに遭遇するので要注意です。
- 498 名前:デフォルトの名無しさん mailto:sage [2008/12/18(木) 14:00:11 ]
- >>489
昔、breakやcontinueが「手続き」扱いで、びっくりしたことがある。
- 499 名前:デフォルトの名無しさん mailto:sage [2008/12/18(木) 15:51:50 ]
- >490
Synchronizeは子スレッドで使用するので子スレッド内のPrivate変数を利用すればok、また参照だけならSynchronize は必要ないですSynchronizeはあくまでメインスレッドの変数更新時の衝突回避なので
- 500 名前:デフォルトの名無しさん mailto:sage [2008/12/18(木) 16:35:21 ]
- >>499
かなり昔のことで忘れたが、Synchronize で引数付き関数が呼べると「便利だなあ〜」などと思ったことがある。 コンパイラが頑張ってくれればできそうなものだと思うけど、間違ってる?
- 501 名前:デフォルトの名無しさん mailto:sage [2008/12/18(木) 17:08:37 ]
- スレッドはTThreadをラップしてコンポーネント化してしまうと便利。
OnExecuteイベントハンドラにスレッドのコード書いて FormのPrivateフィールドの変数を好き勝手に読み書きできて そこからSynchronizeメソッドを呼ぶとOnSynchronizeイベントが呼び出されるようにして UseThreadプロパティをFalseにするとサブスレッドを使わずメインスレッドからOnExecuteが実行されるように 小細工してロジックのバグを事前に潰しておくとデバッグがかなり楽になる。
- 502 名前:デフォルトの名無しさん mailto:sage [2008/12/18(木) 19:19:57 ]
- なるほどね、コンポーネントにするところまでは考えなかった。
Threadを使うのに便利そうなUnitは作ったことあるけど、なんせ、マルチスレッド にするプログラムはそう滅多になかったんで、(そのUnitは)どっかでカビが生え たまま消滅してるはず。(ずーっと見てもいない)(^_^; そういえばこの2年間シングルスレッドぱっかだなオレ。
- 503 名前:ななしへたぐらま ◆XcB18Bks.Y mailto:sage [2008/12/18(木) 19:35:08 ]
- >>486
その通りでございます orz ありがとう!
- 504 名前:458 mailto:sage [2008/12/18(木) 23:44:56 ]
- >>485
ありがとうございました 単なる私の不注意だったようですねお恥ずかしい >>488 with内の[ItemIndex]は昔から効きませんね
- 505 名前:デフォルトの名無しさん mailto:sage [2008/12/19(金) 09:28:39 ]
- >>501
コンポ化は便利そうだけど、イベントとして書くと貼り付けたFormのpas内に コード書くことになるから、なんとなく抵抗があるな スレッドは別処理するためにスレッドにすることが多いし、それだけで ひとつのpasにまとめたい気分
- 506 名前:デフォルトの名無しさん mailto:sage [2008/12/19(金) 09:33:42 ]
- >>501
それはいいかもね。 ちょっとした、TTimerのマルチスレッド版みたいな感覚かな。 MMTimerってのもあったけど、まあ、あれにはSynchronizeがなかったからな
- 507 名前:デフォルトの名無しさん mailto:sage [2008/12/19(金) 09:54:41 ]
- >>505
つ TDataModule
- 508 名前:デフォルトの名無しさん mailto:sage [2008/12/19(金) 21:08:05 ]
- TRegExprでExpressionに指定した正規表現が正しいか確認する方法はあるでしょうか?
Compileの例外を監視するとかですかね?
- 509 名前:デフォルトの名無しさん mailto:sage [2008/12/21(日) 18:39:58 ]
- Del7でTMyForm作ってpublishedなプロパティ、イベントハンドラを追加して
それをフォームデザイナに反映させる方法ってない?
- 510 名前:デフォルトの名無しさん mailto:sage [2008/12/21(日) 19:08:00 ]
- >>509
パッケージにするとか
- 511 名前:デフォルトの名無しさん mailto:sage [2008/12/21(日) 21:43:26 ]
- >>509
フォームデザイナに反映させる時は、どうしてもIDEに組み込む必要があって コンポーネントとかの形にしないといけないみたい 動的にはできないんだよな・・・
- 512 名前:デフォルトの名無しさん mailto:sage [2008/12/21(日) 22:58:34 ]
- >>510-511
パッケージ化すればできちゃうの? 普通にコンポーネントとして登録すると 新規作成ででてくるのかな。
- 513 名前:デフォルトの名無しさん mailto:sage [2008/12/21(日) 23:23:07 ]
- >509
ない。 あきらめろ(冷たいようだけど)。
- 514 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 01:06:16 ]
- TRegExprでテキストファイルの空行を削除するには、どうすればよいでしょうか?
^$とかではマッチしないし、(\r\n){2,}を\r\nに置き換えようとすると、そのまま\r\nが 表示されます・・・
- 515 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 01:27:44 ]
- >>514
^¥r¥n$だとどう?
- 516 名前:514 mailto:sage [2008/12/23(火) 01:34:30 ]
- >>515
即レスありがとうございます。 それでもマッチしません。 置換の方は、#13#10としてもダメです・・・
- 517 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 02:07:29 ]
- delwiki.info/?%E3%82%B3%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%8D%E3%83%B3%E3%83%88%2FTRegExpr%2F%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%83%98%E3%83%AB%E3%83%97%2FSyntax%20of%20Regular%20Expressions
- 518 名前:514 mailto:sage [2008/12/23(火) 06:19:49 ]
- (?m)^\r\nでマッチするようになりました。
お騒がせしました。
- 519 名前:514 mailto:sage [2008/12/23(火) 07:16:29 ]
- 続けてすみません。
置換後の文字列に改行を含むようにするにはどうすればよいか 分かりますでしょうか? #13#10とすると、#13#10がそのまま表示されます。
- 520 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 07:21:53 ]
- 'hogehoge'#13#10'fugafuga'
- 521 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 09:52:55 ]
- 'hogehoge'+sLineBreak+'fugafuga'
- 522 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 10:15:36 ]
- sLineBreakって何で存在するの?
#13#10の方が短くていいじゃん
- 523 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 10:29:00 ]
- ・数字の羅列よりも意味がわかりやすい
・将来、改行コードが変更されても対応しやすい そんなところかと。
- 524 名前:514 mailto:sage [2008/12/23(火) 10:37:55 ]
- >>520-522
できました。 ありがとうございました。
- 525 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 17:12:04 ]
- >>523
追加: ・マジックナンバーつかうような奴とは仕事したくない、という奴と仕事ができる
- 526 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 17:37:39 ]
- じゃあ使わなくても何の問題もないな
- 527 名前:デフォルトの名無しさん mailto:sage [2008/12/23(火) 21:58:23 ]
- >424
むちゃくちゃ遅レスでもう見てないと思うけど、こんなん見つけた。 Andy’s Blog and Tools ? Increase the number of MRU items ttp://andy.jgknet.de/blog/?page_id=198
- 528 名前:デフォルトの名無しさん mailto:sage [2008/12/24(水) 12:52:47 ]
- HTMLパーサのコンポーネントでオススメのものありますか?
- 529 名前:デフォルトの名無しさん mailto:sage [2008/12/24(水) 17:58:20 ]
- delphiに標準でついているコンポーネントのコンポーネントパレットに出ているアイコンの
画像を取りたいのですが、これらの画像はどこかのフォルダにあるんでしょうか? delphi4です。
- 530 名前:デフォルトの名無しさん [2008/12/26(金) 19:15:08 ]
- Print Screenキーでどうでしょ
- 531 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 21:43:48 ]
- そんなフォルダはないです? www
- 532 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 21:45:58 ]
- ない
|

|