Delphi初心者のための寺子屋at TECH
Delphi初心者のための寺子屋 - 暇つぶし2ch786:デフォルトの名無しさん
10/04/24 06:25:15
>>783
Delphi 2010に、TurboPower SysToolsをインストールするHPって、
 URLリンク(edn.embarcadero.com)
だよな。
公式ページに掲載されてる情報なんだから、コード修正なんて不要だと思うのだが。


787:デフォルトの名無しさん
10/04/24 13:21:27
やってみてから言えよ屑

788:デフォルトの名無しさん
10/04/25 04:57:24
やってみました。

確かに StBarC.pas の数箇所で変更が必要です。
修正箇所は、こんな感じ。

修正前: Case c :
修正後: Case AnsiChar(c) :

修正前: if c in [...]
修正後:if CharInSet(c, [...])


>>787
批判するだけで建設的な意見を書き込めない「無能者」は、
どんな社会でも受け入れられないでしょう。
幸いにも受け入れられる社会を見つけても、そこはキミと同じ無能者
の巣窟だろうね。


789:デフォルトの名無しさん
10/04/25 07:31:19
マジになんなよ

790:デフォルトの名無しさん
10/04/26 03:45:29
>>788
公式だからと鵜呑みにしたのは無能じゃないの?
馬鹿なの?

791:デフォルトの名無しさん
10/04/26 15:14:30
>>788
見当違いの>>786みたいなレスも社会では受け入れられないよね、無能の屑さん^^

792:デフォルトの名無しさん
10/04/27 20:09:24
デルフィアン!

793:デフォルトの名無しさん
10/04/28 21:01:59
スペル・デルフィン

794:デフォルトの名無しさん
10/05/10 19:51:14
delphi使っている人って、
独法などで研究やっている人が多いんだよね?ちがう?

795:デフォルトの名無しさん
10/05/11 00:03:18
ちがうね

796:デフォルトの名無しさん
10/05/14 12:00:40
おじゃまします、IDE上で、コード上の大文字/小文字の区別をさせる、何かしらの設定みたいなものって無いんでしょうか
とりあえずヘルプなど当たってみましたが、見つけることができませんでした

例えばMessageBoxとmessageBoxを区別したい(表記が統一されていなければわかるようにしたい)のですが…

797:デフォルトの名無しさん
10/05/14 12:04:26
>>796
何したいのかよくわかんないけど、検索のオプションには大小区別のオプションはあるよ。

798:デフォルトの名無しさん
10/05/14 15:36:56
なるほど、レスありがとうございます

いえ、色々な人間がコーディングしていると、人によってはMessageBoxだったり、またある人はmessageboxだったり、messageBOXだったり、まちまちになるとソースが読みにくくなるんです。
まぁ一括置換をしてやれば良いんですが、できればコーディングしている段階で、その人がわかるようにコンパイルで弾いてやれないかなと思ったんです

神経質といえば神経質ですね

799:デフォルトの名無しさん
10/05/15 13:46:44
Canvasにアルミのヘアライン仕上げみたいな描画をしたいのですが、
やり方載ってるページとか無いですかね?

検索してもPhotoshopでのやり方とかは出てくるんですがねぇ・・・
Bitmapに保存しておいて、それを貼り付ける方法も考えたのですが、
出来れば、コードで描きたいんですけど。



800:デフォルトの名無しさん
10/05/15 18:39:30
>799
漏れはプログラムは組めるが絵心が無いんで
Illustratorでヘアライン仕上げみたいな描画をする方法を教えてくれ。
そうしたら実現コード考えてもいい。

801:デフォルトの名無しさん
10/05/17 11:34:05
タイマーをいくつも使ってイベントで処理するのと、
マルチスレッドってやつ使うのとは何が違うの?
タイマー使った方がお手軽に並列処理出来ると思ったけど
違うっぽいんで教えてくだしゃぁ

802:デフォルトの名無しさん
10/05/17 15:24:36
>>800

すみません、規制で書き込みませんでした。


URLリンク(detail.chiebukuro.yahoo.co.jp)

こんな感じですが。
よろしくお願いします。



803:デフォルトの名無しさん
10/05/17 15:46:02
>>801

タイマーのインターバルを50msec位にして、タイマーのイベントで100msec位かかる処理を行うとどうなりますか?
また、スレッドを50msec毎に作成して100msec位かかる処理を行うとどうなりますか?



804:デフォルトの名無しさん
10/05/17 22:31:38
>801
タイマを使うってのはメインスレッドの中で処理が順次行われていくってこと。例えていうなら
中の人が5分おきに電話で起こされて仕事をしてまた寝るってのを繰り返す感じ。だから
処理は並行には行われない。それに対してスレッドのほうは中の人を5人用意してそれぞれに
仕事を割り振って一斉に(でなくてもいいけど)平行して仕事をしてもらう。でも1つしかない
資源は排他的に扱う(一度に一人だけが使用する)ようにしなければならない。

勘違いしやすいのは、タイマはタイマ割り込みではなく、指定した時間が経過したことを
示すフラグでしかない(WM_TIMERはフラグが立ったことの通知)というあたり。

805:デフォルトの名無しさん
10/05/17 23:45:33
>>803,804
ありがとうございました。
すっきりしますた。

806:デフォルトの名無しさん
10/05/18 01:06:28
>>802
なんかオレにも出来そうだな。
ちょっと書いてみるか。

807:デフォルトの名無しさん
10/05/21 12:26:43
複数のスレッドが並列処理されることは保証されるの? 片方のスレッドが停滞することは
ありえないの?

808:デフォルトの名無しさん
10/05/21 12:48:02
>>803の答えはどうなるの? タイマは呼び出しスタックが積み上がるイメージだけど

809:デフォルトの名無しさん
10/05/21 13:35:27
>>807
マルチタスクで片方のタスクが停滞することはありえないの?

810:806
10/05/22 21:35:02
挫折

811:デフォルトの名無しさん
10/05/24 14:48:48
Exeのアイコンをタスクバーでは非表示にして、
タスクバーのツールバー(?)に表示するには、
どうしたら良いのでしょう?

812:デフォルトの名無しさん
10/05/24 15:15:45
タスクトレイ?

813:デフォルトの名無しさん
10/05/24 15:51:40
その通りです!!!

タスクバーのアイコンを非表示にして、タスクトレイにアイコンを表示したいでつ。

814:デフォルトの名無しさん
10/05/24 16:10:48
そうか。わかった。

815:デフォルトの名無しさん
10/05/24 16:12:33
教えて下さいorz

816:デフォルトの名無しさん
10/05/24 16:23:18
>>815
えっと、質問何だったっけ?

817:デフォルトの名無しさん
10/05/24 17:19:24
見つけました:

URLリンク(kazina.seesaa.net)

818:デフォルトの名無しさん
10/05/27 11:18:13
Delphi 6 を最近始めました。
 シリアル通信で マイクロソフトのActiveX MSCOMM32.OCX を使った場合
 処理の途中でポートが開いているか判別するのに

if MSComm1.PortOpen = False then // クローズ状態
begin
{ ポートがクローズしていた場合の処理 }
end else
begin
{ ポートがオープンしていた場合の処理 }
end;

とやるところを、CommX で
URLリンク(www.moriq.com)
URLリンク(www.moriq.com)

TCommX.Handleプロパティ
>property Handle: THandle;
>通信ハンドルの値を示します。

819:デフォルトの名無しさん
10/05/27 11:19:16
-続き-

>このプロパティは、拡張のために用意されています。
>また、オープンされていない状態のときは、
>必ず -1 となるので通信コンポーネントの状態を知ることもできます。
とあるので

if CommX1.Handle = -1 then // クローズ状態?
begin
{ ポートがクローズしていた場合の処理 }
end else
begin
{ ポートがオープンしていた場合の処理 }
end;

とやってもポートopen/close 関わらず片一方の処理しかできません。
ポートの開閉状態を知るのに何かコツでもあるのでしょうか?
検索を掛けても、手動でボタンなどを操作するソースばかりでわかりません。
壮絶な勘違いをしているかもしれませんが、教えてください。

820:818-819 です
10/05/27 17:43:42
半分 自己解決です。
この場合の if CommX1.Handle = -1 then
-1は
Integer型「符号あり整数値」= -1
 じゃなくて
Cardinal(UINT)型 = 4294967295
 になるんですね・・・

又は 16進数で = FFFFFFFF

if CommX1.Handle = 4294967295 then
if CommX1.Handle = $FFFFFFFF then

で逝けました・・・

821:デフォルトの名無しさん
10/05/27 21:00:45
つ INVALID_HANDLE_VALUE

822:818-819 です
10/05/27 22:47:47
>>821 (〃▽〃) おぉそのような文字列があったのですね・・・

しかし、MSCOMM32.OCX から CommX に変えると、シリアル経由で
1秒間隔毎にだらだらと送られてくる文字を足していって #13#10 で区切って文字列にし、
必用な部分を抜いて、別に送ると
これまでの約5倍ほどの遅延が発生するようになってしまいました。

URLリンク(sourceforge.net)
TComPort に切り替えて読み込みの遅延は押さえ込めそうなのですが、
今度は>>818 の処理をさせる書式が見当たりません。
どなたか判る方、教えていただけませんでしょうか?

823:デフォルトの名無しさん
10/05/27 22:56:05
遅延はやり方が悪いだけだろ

824:デフォルトの名無しさん
10/05/27 23:55:38
>822
つ Connected

825:824
10/05/28 00:00:45
>822
あ、OnRxCharのようなデータの受信イベントで処理するのが常道だから。

826:818-819 です
10/05/28 01:56:16
>>824
行けました・・とサクっと書きたかったのですが、
最初入れていたのが TComPort component version 1.50 で、その書式だとエラー
なんとか比較的新しいコンポーネントに入れなおして突破できました。
ありがとうございました。
>>825 地道に理解していきます m(_ _)m

827:デフォルトの名無しさん
10/06/18 14:29:38
BDE無しでODBC使いたいです。

828:デフォルトの名無しさん
10/06/18 16:33:12
ADOは?

829:827
10/06/18 17:01:15


実は、C++ Builder 6 なんですが、ADO経由でODBC出来るんでしたっけ?

830:デフォルトの名無しさん
10/06/18 17:07:22
URLリンク(detail.chiebukuro.yahoo.co.jp)

831:827
10/06/18 17:09:14


とりあえず、ADOアクセス検討してみまつ。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch