5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

くだすれDelphi(超初心者向け) Part3

1 :毛の生えたフサギコ:03/06/19 10:38
このスレッドは、

他のスレッドでは書き込めない超低レベル、もしくは質問者自身何が何だが
分からない質問を勇気を持って書き込むスレッドです。

Delphi使いが優しくコメントを返しますが、お礼はDelhiの布教と初心者の
救済をお願いします。

2 :デフォルトの名無しさん:03/06/19 10:39
ゲッツ

3 :毛の生えたフサギコ:03/06/19 10:39
くだすれDelphi(超初心者向け) (Part1)
http://pc2.2ch.net/tech/kako/1051/10518/1051882835.html

くだすれDelphi(超初心者向け) Part2
http://pc2.2ch.net/test/read.cgi/tech/1053757982/

4 :毛の生えたフサギコ:03/06/19 10:39
げ >> 2


5 :毛の生えたフサギコ:03/06/19 10:40
リンク集
http://onigiri.s3.xrea.com:8080/delphi/index.php?%5B%5B%A5%EA%A5%F3%A5%AF%5D%5D

6 :毛の生えたフサギコ:03/06/19 10:56
前スレ http://pc2.2ch.net/test/read.cgi/tech/1053757982/
使い切ってから利用しましょう。

7 :好い加減頭悪いの治して欲しい:03/06/19 11:03
ま た D e l h i に な っ て る よ

8 :デフォルトの名無しさん:03/06/19 11:12
>>7
1つなおってるじゃないか(ワラ

9 :毛の生えたフサギコ:03/06/19 11:13
げ。>> 7
二つ目があったのか。QualityCentral 経由でバグ登録してください。

10 :デフォルトの名無しさん:03/06/19 11:31
>>1
でるひ ってなんですか?

11 :デフォルトの名無しさん:03/06/19 11:39
>>10
粘着うざい

12 :デフォルトの名無しさん:03/06/19 11:42
>>11
粘着じゃないんですが?

13 :デフォルトの名無しさん:03/06/19 17:28
            _____________
     ∧,,∧   /
    ミ,,゚Д゚彡< とっても、いいと思われまふ
   'ミ つ旦)~~  \___________
  ⊂ミ",, ,,ミ つ
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=999486538

14 :デフォルトの名無しさん:03/06/19 18:59
エクスプローラから、複数ファイル名をD&Dで、特定のFILELISTBOX
に持ってくることは可能でしょうか??

15 :デフォルトの名無しさん:03/06/19 22:54
持ってくるの意味が分かりません。

16 :デフォルトの名無しさん:03/06/19 23:43
[ajsifjdsiofjisdo]

[jふぃjfdi]

のような文字列があったとして
2バイト文字があるか高速に確認できるプログラムを教えてください。


17 :デフォルトの名無しさん:03/06/20 00:48
Delphi7を使っているのですが、使いたい
NMHTTPコンポーネントが見つかりません。
どこにありますでしょうか?


18 :デフォルトの名無しさん:03/06/20 00:49
Delphiという文字列が含まれた文章から
Delhiという文字列を削除したいです。
どうしたらいいですか?

19 :デフォルトの名無しさん:03/06/20 00:52
>>14
Dungeons & Dragons 懐かすい

ところでFILELISTBOXってどんな魔法?

20 :14:03/06/20 00:54
D&Dとはドラえもんとドラえもんズの略でつ。

21 :デフォルトの名無しさん:03/06/20 01:15
>>18
StringReplace

s := StringReplace(s, 'Delphi', '', [rfReplaceAll]);

22 :デフォルトの名無しさん:03/06/20 01:24
>>21
ありがとうございます。
それを>>1に対して実行するには
どうしたらいいですか?
教えてください。

23 :デフォルトの名無しさん:03/06/20 02:01
>>17
少なくともDel7のPer版, Pro版には付属してないらしい
ttp://leed.issp.u-tokyo.ac.jp/~takeuchi/delphi/article/071/071174.html

24 :デフォルトの名無しさん:03/06/20 02:26
>>16
ByteType関数使ってください。

for i := 1 to Length(S) do
begin
 if ByteType(S[i]) = mbLeadByte then Result := True;
end;

25 :デフォルトの名無しさん:03/06/20 02:39
for i := 1 to Length(s) do
if s[i] in LeadBytes then result := True;

の方がずっとはえー

26 :デフォルトの名無しさん:03/06/20 02:53
TlistViewに指定ディレクトリ直下のフォルダだけを一覧にしたいんだが
FindNextを使うしか方法はないのん?

フォルダ数少なくてもファイル数が多いディレクトリ直下を調べるとき遅くてイヤソ(;´Д`)

27 :デフォルトの名無しさん:03/06/20 04:12
>>26
シェルネームスペースを使う。


28 :16:03/06/20 06:51
>>24 >>25
ありがとうございます。

29 :デフォルトの名無しさん:03/06/20 07:44
やるきだせよ

30 :デフォルトの名無しさん:03/06/20 08:15
>>26
うちだと2000個くらいファイルがあっても0.2秒くらいで開けるがな。

31 :デフォルトの名無しさん:03/06/20 12:39
>>16
速度も遅いしあまり薦めないけど

Function IsContainDBCS(const s : string )
begin
 result := length(s) <> length(WideString(s));
end;

32 :のちもち:03/06/20 14:18
取得したメディアのなかみをリスト一覧のなかから選択し、
エクスプローラライクに表示させたいのですが、
(左にTreeView、右にListViewで、ファイル名、サイズ、
更新日時といったカンジで)
そのデータの保持方法がいまいち思い浮かびません。
各フォルダごとにその直下のファイルリストを保持するのは
現実的ではないだろうし…。
ちなみにツリー表示するだけのものなら、もうできあがっているので、
あとはファイルサイズも見られるようになったらいいかなと思って、
今はツリー表示しかできないところを、
エクスプローラライクにできないかなあ、と画策しているのです。


33 :デフォルトの名無しさん:03/06/20 16:38
自分のマシンのIPアドレスを取得するにはどうすれば良いでしょうか?

34 :コピペしようぜ!!:03/06/20 16:55
早稲田大SuperFree強姦事件のまとめページ
http://www.memorize.ne.jp/diary/06/93147/
早稲田大レイプ魔晒し上げ画像
http://tmp.2chan.net/img2/src/1056025506230.jpg
http://oosaka52.hp.infoseek.co.jp/cgi-bin/img/586.jpg
早稲田大レイプ魔晒し上げフラッシュ
http://cstrike-inr.mine.nu/SuperFree/waseda.swf


35 :デフォルトの名無しさん:03/06/20 17:03
>>16
>>25改。これが出た中では一番速い。
Result := False;
for i := 1 to Length(s) do
 if s[i] in LeadBytes then begin result := True; break; end;

ByteTypesは前後の文字も調べてるので計算量はこの方法の数倍だし、
(LeadBytesは単に全角の一バイト目かどうかを調べるのに対し、ByteTypesの方が情報量が多い)
WideStringにキャストは、すべての文字をコンバートする上新たなメモリ割り当ても行うので
悪いけど単に調べるだけの用途ならちょっと論外。

36 :デフォルトの名無しさん:03/06/20 17:14
自分の作ったプログラミングの2重起動を禁止する方法を教えて下さい。

37 :デフォルトの名無しさん:03/06/20 17:20
D5ProにLMD-TOOLSというコンポーネントをインストールしたらIDEでstringやSQL等を編集するエディタが
LMD製になってしまいました。
日本語が通らないので元に戻したいのですがどうしたらいいでしょうか。
使いたいコンポーネントがあるので完全にアンインストールしないでエディタだけ元に戻す方法が有れば教えてください。


38 :デフォルトの名無しさん:03/06/20 17:26
>>36
http://www.google.co.jp/search?q=CreateMutex+Delphi&lr=lang_ja

>>36
LMDなんとか知らないけどソースがあるなら
RegisterPropertyEditor を探して 修正したらどう?

39 :36:03/06/20 18:12
>>38
どもっす。
なんとかできそうです。
ありがとうございます。

40 :26:03/06/20 22:31
>>27
thxこれから調べるッ

41 :26:03/06/20 22:31
>>30
二千じゃ聞かないのだよ二千じゃ(`Д´)

42 :デフォルトの名無しさん:03/06/20 22:59
設計で質問です
あるクラスTAのリストを持つTBというクラスがあったとして
TAに変化があった場合TBでもそのことを知りたいんですが
下のようにはできませんよね?

Type
 TA = class(TObject)
  Owner: TB;
  a: Integer;
 end;

 TB = class(TObject)
  List: TObjectList;
  modified: Boolean;
 end;

これはTA宣言時にTBが何だかわからないのでダメみたいですが
これの解決方法にTAにTObjectとしてTBを持たせてキャストしてアクセスするのと
TA.aへのアクセスをTBからしかできなくする以外に方法はありますか?
それとも根本的な設計ミスですか・・・?

43 :デフォルトの名無しさん:03/06/20 23:06
TB = class; と最初に書いておく

44 :デフォルトの名無しさん:03/06/20 23:10
>>43
首吊ってきます・・・

45 :デフォルトの名無しさん:03/06/21 10:31
ネットワーク上の別のマシンの共有フォルダにある
ソフトを起動するにはどうすれば良いですか?

ShellExecute だと自分のマシンでネットワーク上のソフトを起動する事はできますが、
別のマシン(Aとします)上のソフトをA上で起動するにはどうすれば良いでしょうか?

OSはWinXP HomeEditionです。

46 :デフォルトの名無しさん:03/06/21 10:51
>>45
もしそれが何の設定もなく出来るとなると、ちょっと困った事になりますよね?

・Aのマシンでtelnetd を走らせておくとか
・Aのマシンで バッチファイルがあればバッチファイルを一度実行して実行後削除するというバッチを無限ループで作るとか

47 :45:03/06/21 11:19
>>46
確かに、何の制約もなくプログラムを実行出来るのは問題がありますね(^^;

バッチファイルが今回の私の場合、使えそうです。
アイデアありがとうございます。

48 :デフォルトの名無しさん:03/06/21 11:43
DCOM という手もある。>> 45

49 :デフォルトの名無しさん:03/06/21 14:11

関数を引数として関数に渡すにはどのようにしたらよいでしょうか。

50 :直リン:03/06/21 14:13
http://homepage.mac.com/yuuka20/

51 :_:03/06/21 14:21
http://homepage.mac.com/hiroyuki44/

52 :デフォルトの名無しさん:03/06/21 14:49
>>49
関数ポインタ方を先に定義します。

例えば type TMyFunc = function (x:integer):Integer;

で TMyFunc型の引数で関数を定義すればよろしい

53 :デフォルトの名無しさん:03/06/21 17:59
前スレ上がってたのでage

54 :デフォルトの名無しさん:03/06/21 19:53
>>17まだ見てる?
Indyならネット関連のプロトコルパッケージが無料で使える
ttp://www.nevrona.com/Indy/
日本語ヘルプ
ttp://www.borland.co.jp/delphi/del7docup.html

55 :デフォルトの名無しさん:03/06/21 23:28
ゲームプログラムなんですが、メインFormのonCreateで、設定ファイルを読んで、
必要なオブジェクトを用意して、画面に配置して、それらの準備ができたらMMTimerを
スタートさせてゲーム開始!・・・のはずなんですが、

onCreateの最後でMMTimer.startをやると希にアクセス違反を起こしてしまいます。
もしかして、オブジェクトの準備ができていないのにタイマーをスタートさせて
それらをいじろうとしたから・・・?

オブジェクトを作る命令がいくつかあって、その一番最後でタイマーを動かしてるんですが
こういうことってあるんでしょうか?

56 :デフォルトの名無しさん:03/06/21 23:46
>>55
あります
私もそれで泣きました
解決方法としてはOnShowで
if not Timer.Enable then Timer.Start
みたいにやるか
独自のWindowsメッセージを定義して
OnCreateの最後で投げるなどがあります
(メッセージループに入った=初期化処理は全て終わった)

57 :デフォルトの名無しさん:03/06/21 23:51
Delphiの事を考えるだけで、胸がドキドキします
これは、もしかして "恋" なのでしょうか?
誰か、経験者の方は、おりませんでしょうか?

58 :デフォルトの名無しさん:03/06/22 00:01
>>57
このスレはネタスレではありません。
ここ逝って聞いてください。そして二度と帰ってこないでください。
http://academy2.2ch.net/min/





59 :デフォルトの名無しさん:03/06/22 01:00
>>23>>54
ありがとう。調べてみます。

60 :デフォルトの名無しさん:03/06/22 01:08
>>56
うわ、助かります。・゚・(ノД`)・゚・。
MMTimerはEnableプロパティは無いようなので、メッセージですか・・・。
どう違うのか仕組みがわかってませんが、、精進します(´・ω・`)

61 :デフォルトの名無しさん:03/06/22 01:10
>>52 
ありがとうございます。
ケースごとに不特定の関数を渡すようにするには
どうしたらよいですか?聞いてばかりですいません・・

62 :デフォルトの名無しさん:03/06/22 03:40
>>61
pointer 型にキャスト。

63 :デフォルトの名無しさん:03/06/22 06:52
>>61
ケースごとって case 文の事? 詳しく書かないと判らんよ

64 :デフォルトの名無しさん:03/06/22 07:37
>>63
わからんなら、レスつけるなよ。52 の元の 49 を読みなさい。
ケースが Case 文かどうか関係ないでしょ?強い型付言語のひとつの Pascal で、
任意の関数を引数に渡したい。って話なんだから、pointer 型使うしかあるまい。

pointer 型は、C/C++ でいうところの void * で、任意のポインタを表現できます。
その代わりのっぺらぼう。関数としての情報すら失っていますから、実際に元の関数を
呼び出す場合には、再度 52 に有るような関数型名定義を行い、それにキャストする形と
なる。

65 :デフォルトの名無しさん:03/06/22 08:16
だから、そういうふうにpointer型を使って無理に渡すのはどうかなと思ったから詳しい事情が知りたいわけ。
その設計には明らかに無理があるでしょ?

66 :61:03/06/22 10:16
やりたいことは、ある条件を判定する汎用的関数があって、
その関数は幾つかの関数から呼び出されるのですが、
判定条件がTrueの場合、引数で渡された任意の関数にジャンプ
させたいというものです。
素直にcase文を使わないのは、関数を指定するのを呼び出し元のみ
に収めたいと思っているからです。


67 :デフォルトの名無しさん:03/06/22 10:44
>>66
function Hoge( x,y:Integer ; func:TFunction) : boolean ;
begin
 ・・・なんか判定があって・・・
 if Result
 and Assigned(func) then func(引数があれば);
end;

って事? なんだか、構造化されてない設計だね


こういう場合、条件を判定する汎用的関数 ではなく、汎用的クラスを作った方が色々と簡易になると思うけど?




68 :デフォルトの名無しさん:03/06/22 12:31
StringList内にhogeという文字列がいくつあるか数えるにはどうすればいいんでしょうか?

69 :デフォルトの名無しさん:03/06/22 12:43
ループ回して自分でカウントしろ

70 :デフォルトの名無しさん:03/06/22 12:46
http://halbow.cool.ne.jp/VCL05.html

71 :ありがと:03/06/22 13:22
関数ゲット ズサー
内容調べてから使います

72 :デフォルトの名無しさん:03/06/22 14:12
質問なのですが、

Form1 から Form2 を開いたとき、Form2 で Form1 上の内容を
参照したいのですが、どうしたら良いのでしょう?

Sender でそれらしいことができるのではないかと思うのですが、
イマイチ分かりません。


73 :デフォルトの名無しさん:03/06/22 14:15
Unit2でUnit1をusesしれ

74 :72:03/06/22 14:23
>>73 さん

も、もう少し細かく教えてもらえれば助かるのですが……。

例えば、Form2 から Form1 上のラベルの Caption を参照する場合には
どういうコードになるのでしょう?


75 :デフォルトの名無しさん:03/06/22 14:30
implementation
uses Unit1;

procedure TForm2.Button1Click(Sender: TObject);
begin
Form1.Label1.Caption := ' ♥ ';
end;

76 :72:03/06/22 14:45
ありがとうございます。これで目的のことができそうです。


ついでにもうひとつ質問なのですが、

Torm2 が、Torm1 と Torm3 のどちらかから Create, ShowModal される可能性が
あるとして、Form2 内でどちらのフォームから表示されたかを識別するにはどうしたら
良いでしょう?


77 :72:03/06/22 14:46
Torm じゃなくて、Form ですな……

78 :デフォルトの名無しさん:03/06/22 14:54
>>76
 可能性がって、それは自分がコーデングするとは限らないって意味?
 自分がプログラムを作るのなら、 FOpener:TForm; メンバか プロパティを用意して
 それに代入する事にしたらいいと思うよ。

 他人が使うなら ShowModal を殺しておいて、
procedure MyShowModal(Sender:TForm);
みたいな手続きを用意してこれを使ってと書いておいたら?

79 :デフォルトの名無しさん:03/06/22 15:12
Delete(BIOS)

80 :デフォルトの名無しさん:03/06/22 15:14
たぶん単純に、作る奴も開く奴も同じだろうから、
Createの引数に作成者(Form1なりForm3なり)を入れて、Ownerで判断しれ

81 :デフォルトの名無しさん:03/06/22 16:43
配列型定数の定義の方法で悩んでいます。
たとえば、4*4の行列

1 2 3 4
2 3 4 5
3 4 5 6
4 5 6 7

があるとき、任意の行を取り出してそれぞれの
要素の合計を4つの変数に求めるプログラムを
作りたいのです。
(上の場合なら最初の行と3番目の行を取り出
し4つの変数にそれぞれ4,6,8,10という結果を
代入する)

しかし、この行列を配列にひとつずつ代入する
以外のやり方で定義したいのです(それという
のも、本番のプログラムは対象が26*8の行
列になるからです)。

よろしくお願いします。

82 :A:03/06/22 17:02
>>81
配列をクラスにして、一気にまとめてセットするメソッドかプロパティを作っては?


83 :デフォルトの名無しさん:03/06/22 17:10
>>81
その定数というのは
1)定数であって計算でも求まるもの
2)毎回入力または変更するもの

どちら?
1)なら 配列定数を吐き出すプログラムを作る。 
2)なら、カンマ区切りのテキストファイルにして入力させればいい


84 :A:03/06/22 17:12
>>81
あ、定数か…。
それなら、

const A: array[0..3, 0..3] of Integer
 = ((1, 2, 3, 4), (2 ,3, 4, 5), (3, 4, 5, 6), (4, 5, 6, 7));

でいいはず。
詳しくは、ヘルプで"配列型定数"を見てみて。

85 :デフォルトの名無しさん:03/06/22 17:56
>>82-84
当方、まだまだ初心者の域を出ずクラスを作ってどうこうという方法は
いまいちよくわかりません。
今回は>>84の方法でやってみようと思います。

へルプの配列型定数のところは読んではみたのですが、例として提示さ
れた方法がよくわからなかったもので・・・・・・。

ありがとうございました。

86 :デフォルトの名無しさん:03/06/22 18:22
関数や手続きを外部ファイルに出してそれを使うにはどうすればいいんですか?

87 :デフォルトの名無しさん:03/06/22 18:23
{$INCLUDE xxx.inc}

88 :デフォルトの名無しさん:03/06/22 18:29
unitのことじゃ・・・

89 :デフォルトの名無しさん:03/06/22 20:27
>>86
1.ファイル(F) 新規作成(N) ユニット(U)

2.
unit Unit2;
interface
procedure Hoge; // 宣言
implementation
procedure Hoge; //
begin
  処理
end;
end.

3.
unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Unit2; // Unit2追加
中略
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
  Hoge; // 呼び出し
end;
end.

90 :86:03/06/22 20:30
>>89
ども

91 :デフォルトの名無しさん:03/06/23 08:34
>>67
ありがとうございます。
Delphi始めたばかりなもので、もっと勉強してみます。



92 :デフォルトの名無しさん:03/06/23 08:42
単純に大文字小文字を区別せず2つの文字列を比較したい場合
CompareTextとSameTextだとどっちのほうが効率的なんでしょうか?

いろんなサンプルプログラムではよくCompareTextが使われてるみたいですけど
Compareしたあとにまた=0で判定する分無駄があるように見えます

Del6Personalなので中で何やってるのか全然わからないので
頓珍漢な質問かもしれませんがご存知の方お願いします・・・

93 :デフォルトの名無しさん:03/06/23 08:50
パフォーマンスを気にするんなら実際に計測してみなよ。
たいていボトルネックになっていないことがわかるから(藁

94 :デフォルトの名無しさん:03/06/23 09:01
>CompareTextとSameTextだとどっちのほうが効率的なんでしょうか
SameText内部でCompareTextが呼ばれる。

ちなみに
var a,b:string; なら
if a=b then ・・・ でいいと思うが? ただし負荷はほぼ同じだが


95 :デフォルトの名無しさん:03/06/23 09:19
じゃあ見た目が綺麗だからSameTextにします
>>94
関係演算子だとCaseSensitiveじゃないですか・・・?

も1っこ質問なんですが
ビットフラグみたいに集合型を扱う場合
特定ビットの反転にあたる演算子はあるんですか?
a := a xor [someflag]; みたいな(これじゃエラーでた・・・)

ヘルプを見る限りは和集合-積集合しか方法が無いみたいですが
これこそ可読性が極端に下がるので使いたくない・・・

96 :デフォルトの名無しさん:03/06/23 09:49
綺麗に表現出来ないなら、それは集合型を選択するのが間違いだったって事では?

プロパティに使うと便利だからって理由で、そして反転したいなら if 文で書いた方が判り易くて良いでしょう
if someflag in a then Exclude(a else Include(a, someflag ) みたいにさ

97 :デフォルトの名無しさん:03/06/23 09:59
TStringGrid の上でマウスホイールを使ってスクロールした時、
遅くスクロールした場合と、早くスクロールした場合で処理が分かれてしまいます。
具体的に書くと、遅くスクロールすると選択している項目が下にずれていき、
早くスクロールするとスクロールバーが動きます。
これを両方ともスクロールバーを動かすようにする方法はありませんか?

98 :デフォルトの名無しさん:03/06/23 10:10
>>96
すみません
ビットフラグはビットフラグでやれってことですね・・・

99 :Delphi 6 Personal:03/06/23 10:34
*.dprでDelphiを開いたときに全部のユニットをタブを表示するのはどこを設定すればいいのですか?

100 :デフォルトの名無しさん:03/06/23 10:55
☆貴方好みの美女をクリックしてみて☆(特典いっぱい)
http://endou.kir.jp/yuminet/link.html

101 :デフォルトの名無しさん:03/06/23 11:39
ICONファイルの透明色ってどうやって指定するんでしたっけ?

102 :デフォルトの名無しさん:03/06/23 11:55
アイコンファイルは自動的に座標(0,0)が透明色になる筈だが


103 :デフォルトの名無しさん:03/06/23 14:33
メモリリークを検出するようにしたら
やっぱりというか5つほど開放忘れがあったらしい
だがしかし、自分でやってる全てのCreate/GetMemを
順番にコメントアウトしてみてもまったく無くならない

そこで、リークしてるメモリの中身は分かっているので
コレをもとにデバッガか何かで、実行中に
同じ内容のメモリ領域を探し出すことって出来ますか?
Personalなんで微妙ですが、やっぱ無理かな

104 :103:03/06/23 14:41
あ、あと当たり前かも知れませんが
何度起動しても毎回同じ内容です
(しかも同じのが3つもある)

105 :103:03/06/23 22:24
最悪
チェッカのバグかVCLの仕様だった
最初に空フォームで検証してみなかった俺の馬鹿・・・

106 :デフォルトの名無しさん:03/06/24 02:02
>>102
だっけ?
VisualStudioのアイコンエディタだと透明色ってのがあって、それで塗った部分が透明になるけど。
たしかDelphiについてきたイメージエディタ(のアイコン作成)もそんな感じだったような。


107 :デフォルトの名無しさん:03/06/24 03:48
>>103
せめて Delphi のバージョンを。
>>105
自己解決したのか。

D6 では、ひとつのプロセスで三つのメモリブロックを開放しないという「振る舞い」を持つ。
メモリリークはバグの原因の一つだけど、メモリ開放を忘れると必ずバグが出るわけでもない。


108 :デフォルトの名無しさん:03/06/24 07:59
正直に言うと 解放で手抜きをする事は多いな。
解放した後コールバックが飛んできそうな時まあしょうがないと自分でも思うけど
仕様追加でどんどん作業バッファが増えていつどの順で解放させるかトレースする手間取れなくてそのままだったりは
やっぱりイカンな・・・


109 :デフォルトの名無しさん:03/06/24 11:07
>>108
それは設計ミスの気がするが。(もしできるなら)どこかで作り直したほうがいいね。

110 :デフォルトの名無しさん:03/06/24 12:22
Form1が全体のメニューになっていて、ボタンをクリックすると
Form2が表示される(Form1は完全に隠れる)ソフトで
Alt+F4を押したり、タスクバーの「デスクトップの表示」を押して、
その後ソフトを表示させるとForm1が出るのを避けるには
どうすれば良いでしょうか?

Form1でタイマーを動かしているのでShowModalは使えません。

宜しくお願いします。

111 :110:03/06/24 12:31
すいません。
意味不明でした。
わすれて下さい(^^;

112 :デフォルトの名無しさん:03/06/24 12:55
質問しなおします。

Form1とForm2はそれぞれ
OnActiveで
WindowState := wsMaximized;
を実行して、全画面表示にしています。
Form2は選択可能なフォームです。

Form1のボタンをクリックすると
form2 := TForm2.Create(self);
form2.Show;
を実行して
Form2が表示されるプログラムで
タスクバーの「デスクトップの表示」を押して、デスクトップを表示した後
タスクバーから選んで再度プログラムを表示させると
Form2が消えてForm1が表示されてしまいます。
どうすればForm2が表示された状態にする事が出来ますか?

ShowModalを使わない方法をお教え下さい。

宜しくお願いします。

113 :デフォルトの名無しさん:03/06/24 13:27
>>112
Form1はメインフォームだから、先に最大化されてForm2がアクテブになれないからだから、
Form1のボタンをクリックした時に
form2.Show;
WindowState := wsMinimized;
とか最大化を解除しておいたら?

それから、ボタンでフォームを作成する時は2度目が作成出来ないようにしなくてもいいの?
いちおうForm1の子供で管理はされてるんだろうけど


114 :デフォルトの名無しさん:03/06/24 14:06
集合型はBYTE型にキャストできるんでつか?


115 :112:03/06/24 14:16
>>113
ありがとうございます。
解決しました。

Form1のボタンクリックで
if form2 = nil then begin
form2 := TForm2.Create(self);
end;
form2.Show;
WindowState := wsMinimized;
としてみました。



116 :デフォルトの名無しさん:03/06/24 18:58
TIBTransactionてのがありますが、
これは、TIBDatabaseに一個用意するものでしょうか?
それとも使いまわして良いですか?

117 :デフォルトの名無しさん:03/06/25 03:20
集合型の実装は、256 ビット(32 byte)のビットマップ。
Byte 型に強制キャストすることはできても、ほとんどの情報は消えてしまうだろうね。

集合型の個々の要素は最大 256 種類なので、Byte 型に格納することも可能でしょう。


118 :デフォルトの名無しさん:03/06/25 09:50
>>116 大雑把に。
ひとつのデータベースに対して複数のトランザクションをかける必要があるときは、
当然複数の TIBTransaction が必要。管理できるなら一つでよい。
もちろん、複数トランザクションを同時に行う場合には必要なだけ用意しないと。


119 :デフォルトの名無しさん:03/06/25 09:55
DelphiでネットワークプログラミングやRDBプログラミングをするにあたって
おすすめの書籍またはHPを教えて下さい。

120 :デフォルトの名無しさん:03/06/25 09:59
>>114
要素数8個までの集合型のサイズは1バイトなので問題なくBYTE型にキャスト出来る。

要素数16個ならWORD、
32個までならDWORDに対応。

121 :練習問題でヘルプ:03/06/25 10:04
ttp://www.wakhok.ac.jp/~tetsuo/delphi/chap07/pb0703.html
↑このページの【応用課題 7-3-B】をやろうと頑張ってるんですが、
どうしても成功しません。 どこが間違っているのかお分かりに
なる方がいらっしゃいましたらご教授お願い致します。m(__;)m

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer; //for文のカウント用
x:integer; //数式上のx
y:integer; //数式上のy
temp:integer; //xの値を一時保管するための変数。
begin
x := 1; //初期値
y := 0; //初期値

for i := 1 to 1000 do //繰り返しここから。
begin

//描画時にx、yの値を6倍し、中心のズレを修正し、赤色で描画。
Image1.Canvas.Pixels[6*x+Round(Image1.width/2)
,6*y+Round(Image1.Height/2)] := $000000FF;

//次のx,yを求める。
temp := x; //xの値を一時的に保管。
x := Round(y-0.97*x+5/(1+x*x)-5);
y := Round(-0.995*temp); //tempにはxの値が入っている。

end; //for文ここまで。
end;

//このコードで実行すると、ループの9回目に初期値の(1,0)に戻ってしまいます。

122 :デフォルトの名無しさん:03/06/25 11:33
>>121
練習問題で Help 出していたら、いつまでたっても上達しないよ。

あなたのコードは悪くないんだけど、設問を理解し損なっているだけ。
コードを書く前に、コードを理解しなさい。紙に数字を書いていってごらん。

ちょっとした勘違いが、間違った結果を出していることに気づくよ。

123 :122:03/06/25 11:38
コードそのものは間違っていません。
描画コードも関係なし。誤差を考え6倍云々は忘れましょう。

正しい X,Y の組を、紙の上で数回分出して、
デバッガで追ってみましょう。何かに気づく。
気づかなかったら、プログラマには向かないかな?

124 :デフォルトの名無しさん:03/06/25 12:11
向いてる向いてないで一番大事なのは、楽しんで組めるかどうかだと思うよ。(プロ除く)
なのでガンガレ>121

125 :デフォルトの名無しさん:03/06/25 14:42
ルートディレクトリを取得する方法を教えてください。
たとえばCドライブにWindowsのフォルダがある場合は
C:\を取得したいという事です。
宜しくお願いします。

126 :デフォルトの名無しさん:03/06/25 14:50
>>125
検索キー
GetSystemDirectory
ExtractFileDrive ProcessPath


127 :デフォルトの名無しさん:03/06/25 14:51
カレント作業ディレクトリを取得して、それから1〜3文字目を抜き出す。

128 :デフォルトの名無しさん:03/06/25 15:03
>>127
カレントディレクトリが、ネットワーク上、かつドライブにマップしていない場合も
あるので気をつけてね。

129 :デフォルトの名無しさん:03/06/25 15:32
>>126
サンクス

130 :デフォルトの名無しさん:03/06/25 19:53
Rowが1行しか無いと固定セルが真っ白になります。
Rowが1行しか無いように見せたいですが、
DrawCellのoverrideだけでは線が残ってしまいます。
どっかに良いコンポ落ちてないかなー。

131 :デフォルトの名無しさん:03/06/25 21:56
>>130
それはStringGridのことだよね?
ヘルプでFixedRowsプロパティ読んで。

132 :デフォルトの名無しさん:03/06/25 23:01
各画像フォーマットを相互変換するコンポーネントありましたら教えて頂けませんか?



133 : :03/06/25 23:18
S C++
A C
B perl
C Delphi Java
D VB
難易度的にはこんなもんかな。
学習法はVB,Delphi,Pelを並行して勉強後Cを勉強
その後JavaとC++を勉強。


134 :デフォルトの名無しさん:03/06/26 00:13
言語自体が難しいって、一体何なんだろうね
俺がプログラミングを始めた頃は
アルゴリズムに関心があるだけで
FORTRANだろうとBASICだろうとマシン語だろうと
言語自体を習得することなんて問題にもしてなかったな
「C++って何かおかしいんじゃない?」
と思ってみたりもする

135 :デフォルトの名無しさん:03/06/26 00:17
言語自体が難しいって、一体何なんだろうね
俺がプログラミングを始めた頃は
ベーマガ(略)

136 :デフォルトの名無しさん:03/06/26 03:20
皆様、煽りは控えめに....

処理系の規模が大きく複雑なので学習しづらい。とかは有るかもね。
133 のリストにあるのは本質的に同等の記述能力を持つプログラミング言語だし。


137 :Delphi 6 Personal:03/06/26 10:51
TTimerで始めのインターバルをなくす良い方法ありますか?

138 :三十路:03/06/26 10:54
すみませんが、DelphiでSMTP認証のメール送信は簡単にできますこ?

139 :デフォルトの名無しさん:03/06/26 11:13
インターネット関連のプログラミングは大抵Indyで事足りると言ってみる。

140 :デフォルトの名無しさん:03/06/26 11:16
>>137
OnClickからタイマーのイベントハンドラを呼び出す

procedure TForm1.FormCreate(Sender: TObject);
begin
  Timer1Timer(Sender);
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  {タイマーイベント}
end;



141 :140:03/06/26 11:17
×OnClick
○FormCreate

142 :Delphi 6 Personal:03/06/26 13:00
>>140-141
勉強になりましたありがとうございます。

143 :デフォルトの名無しさん:03/06/26 13:33
DB使っているEXEを作ろうと思うのですが、
ファイルサイズが大きくなりすぎると、後々のファイルのアップデートが
やりにくいと思うので、何とか分割する方法がないかなぁ、と。

で、MLの
[Delphi:74315] パッケージを使ってプログラムを分割するとき
のツリーを見たんですが、全然分からなくって (;´д⊂ バカ デ スミマセン

誰か分かりやすく解説お願いします〜。

144 :デフォルトの名無しさん:03/06/26 15:53
TEditの中の文字列をTEditの中で真ん中に揃える(又は、右揃え)ことは出来ないのでしょうか?

145 :デフォルトの名無しさん:03/06/26 16:27
>>144
http://www2.big.or.jp/~osamu/Delphi/Tips/key.cgi?key=16#0224.txt

146 :デフォルトの名無しさん:03/06/26 16:29
>>144
http://pc2.2ch.net/tech/kako/1051/10518/1051882835.html
の835が同じ質問

147 :デフォルトの名無しさん:03/06/26 21:05
Webブラウザみたいなものをフルスクラッチで作る場合、表示部はPaintBox上に
構築していくのでしょうか?

148 :デフォルトの名無しさん:03/06/26 21:08
Delphiなら、 コンポーネントを動的に貼り付けて構築するんでしょうね

149 :デフォルトの名無しさん:03/06/26 21:21
そういうときのために実行時パッケージという手段がある。

150 :ななしへたぐらま ◆XcB18Bks.Y :03/06/26 21:57
>>26
Win9x系だとサブディレクトリのファイル数が多くなると
そのファイル情報にアクセスするのが急激に遅くなります.
(検索だけでなく開くのも遅くなるはず)
基本的に一つのフォルダに何百も何千もファイルは置かない方がよいと思います.

>>130
グリッドコンポは固定行のみ,または固定桁のみという風にはできないようですね.
HeaderControlはどうでしょう?


151 :デフォルトの名無しさん:03/06/26 22:12
質問よろしいかしら?
今バージョン6のパーソナル版つかってるのですが、ひとつまとまったものができあがってきたので、
配布のためプロフェッショナル版を買おうかと思ってます。
が、ボーランドのサイトや、ネット通販のページをみたところBorland Delphi 7 Studio Professional
になっています。
6から7Studioに変更するに当たって6で作ったプロジェクトがそのまま使えないということはあるのでしょうか?
また、気をつけたほうがいいことはあるのでしょうか?

どうか宜しくお願いいたします。

152 :デフォルトの名無しさん:03/06/26 22:25
可能性としてはある。(ex. 6で作ったプロジェクトがそのまま使えないウイルスに感染している場合)

153 :デフォルトの名無しさん:03/06/26 22:42
ありがとうございます。
可能性としてはあるというレベルなのですね。
大きな変更が必要ではないかと不安だったのです。
ウイルスはひととおりチェックいれてますから。

154 :デフォルトの名無しさん:03/06/26 23:41
タイトルバーのアイコンをクリックした時に出てくるポップアップに項目を追加するのはどうやるのでしょうか?

155 :A:03/06/27 00:47
>>151
直接関係ないけど、無料での配布、ならD6パーソナルのままでも可能だと

156 :デフォルトの名無しさん:03/06/27 01:41
>>147 
フルスクラッチで作る場合は、PaintBox を使わないでしょ
フルスクラッチなんだから

157 :デフォルトの名無しさん:03/06/27 01:55
MDIアプリケーションを作ってます。
アプリケーションを起動したときに、追加した子フォームが表示されないようにするには
どのようにすればよろしいのでしょうか?

新規作成 → MDIアプリケーションで最初からあった子フォームだけは最初は非表示になってます。
どうかよろしく御願いいたします。

158 :デフォルトの名無しさん:03/06/27 01:57
アップローダー
http://upbbs.s2.x-beat.com/linkvp/linkvp.html

159 :デフォルトの名無しさん:03/06/27 02:53
色々あってUDPでデータを受信しております。
TNMUDPクラスを使っております。

TNMUDPクラスの受信イベントで受信サイズが分かるので
動的にメモリを確保し先頭アドレスをバッファにほおりこんで後で処理したいです

1)どないしたら動的に取得したメモリに受信データ書けますか?
2)動的に取得しているメモリを違うメッソドで解放しても問題ナッシン?
3)淋病になってチソコ腫れタンだけど薬飲んで腫れが引いたらチソコにコブできた。どーしよー?

160 :デフォルトの名無しさん:03/06/27 02:58
>>154
http://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&q=%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%83%A1%E3%83%8B%E3%83%A5%E3%83%BC+delphi&lr=lang_ja

161 :_:03/06/27 02:58
http://homepage.mac.com/hiroyuki44/

162 :デフォルトの名無しさん:03/06/27 04:08
indyをインストールしたいのですが、Fulld6.batで生成されたdclIndy60.bplをパッケージのインストールで選択すると
「パッケージ ($パス$)\dclIndy60.bpl を読み込めません。システムに接続されたデバイスが機能していません。」
と言われてインストールできません。過去ログやgoogle検索してみましたが原因も対処もさっぱりです・・
どなたか対処法ご存知でしたらご教授願います・゜・(ノД`)・゜・
delphi6personal(update2) + WinME

163 :162:03/06/27 04:10
追記
インストールしようとしているindyのバージョンは9.0.14です

164 :デフォルトの名無しさん:03/06/27 05:49
>>162
ttp://www.nevrona.com/Indy/downloads/9_00_03/IndyNet9_00_03.EXE
↑ インストーラーでインストすれば簡単。 でもIndy9.0.3B。

Indy9.0.3Bは2chブラウザのOpneJaneで今でも使われてるバージョンです。
私もこのバージョンを使ってまふ、Indyの最新バージョンを入れようと
思えば入れられるケドね。

でもIndyくらい自力でインスト出来るようにならないと後々ツライかな・・

165 :デフォルトの名無しさん:03/06/27 05:52
初心者に優しいページ見付けたから貼っておこ。
ttp://www.wakhok.ac.jp/~tetsuo/delphi/mokuji.html

166 :デフォルトの名無しさん:03/06/27 07:51
>>157
プロジェクトファイル(*.dpr)って見たことある?

167 :デフォルトの名無しさん:03/06/27 08:16
>166
あああ なるほど 解決しました
ありがとうございました。

168 :143:03/06/27 09:40
>149

実行時パッケージを使う場合にEXE本体側のものをパッケージ側から使うとリンクしちゃうから、
とかなるので、インターフェースを作りましょう、ってMLでは書いていたんですよね。
Database接続をEXE側のコンポでやっているのをパッケージ側で使おうとしたら、
リンクしちゃわないかな…と。

169 :デフォルトの名無しさん:03/06/27 10:02
>>168
あなたのいう「リンク」ってなに?
ML は半可通がおおいから、ここと同様、頭から信用しないほうがよい。

答えがほしいなら、ML の番号を。

170 :162:03/06/27 10:23
>>164
インストーラー使っても組み込まれないようです・・
インストール自体は正常に終わるのですが、設計時パッケージを見ても増えてませんでした


171 :デフォルトの名無しさん:03/06/27 10:59
IndyのTIdHTTPServerって、マルチスレッドで要求受けてくれるのかな?

172 :143:03/06/27 11:20
>169

MLの番号は >143 で書いたように

[Delphi:74315] パッケージを使ってプロ グラムを分割するとき
ttp://www.users.gr.jp/ml/archive/delphi/74315.asp

から始まるツリーで書かれています。
(このアーティクル中でも書かれています)

173 :143:03/06/27 11:27
ツリーだとこれです。
ttp://130.158.124.192/~takeuchi/delphi/browse.cgi?index=074315

一つ、ご教授お願いいたします。

174 :デフォルトの名無しさん:03/06/27 11:48
ML-74315 でこねくり回しているのは、パッケージの動的ロード。
>>143 であなたが気にしているのは、更新時のファイルサイズの削減。
それに対し、>>149 で提案されているのが実行時パッケージの使用。

ということで、ML-74315 は >>149 の提案とは「直接」には関係ない。
ML-74315 で議論されているのは通常とは異なるパッケージの使い方なので、
通常は無視してよい。

これでよいかな?

175 :デフォルトの名無しさん:03/06/27 11:57
何も考えずに、オプションダイアログで「実行時パッケージを使う」をチェックしてみなさい。
普通に使う分には、パッケージを使う/使わないの影響が表面化しないように設計されているから。

さらに、自分用ライブラリをまとめてパッケージにしたり、ボーランド標準パッケージをばらして
必要なものだけまとめなおす。という選択も可能だ。

なお、DLL 化は Delphi RTL のパッケージの利点を無駄にするので、通常は避けるように。
もし使う場合には、インターフェースを細い/単純なものにしてブラックボックスとして使うこと。

こっから先は「くだすれ」の範囲を超えるかな?

ML-74315 の失敗は(おそらく)パッケージとアプリを同じディレクトリでメンテナンスしていたから。
でしょう。インターフェースなんか出さなくても解決できたのにね。


176 :デフォルトの名無しさん:03/06/27 12:14
最初にアプリ A を作る。
まぁまぁいいかな。ってところで、機能的に分離したい部分をユニット単位でパッケージに移動し
パッケージ P をつくる。この時点では単なる実行時パッケージだ。

デバッグも一段落したので、パッケージ P を動的に読み込むように変更する。
実行時パッケージの参照リストから P を抜き、その代わりに自分で読込み用関数を呼ぶ
用に書き換える。
この時点でアプリ A から、パッケージ P に含まれるユニットに対する参照を全部取り除かなければ
いけない。
P に含まれるはずのユニット U に対する参照がアプリ A に残っていると、パッケージ P を使わない。と指定したのだから
アプリ A にユニット U が含まれてしまう。パッケージ P の管理を手作業で行う。と決めたのだからそこもちゃんと管理し
なければいけない。そんなに難しいことではなく、パッケージ P に含まれるユニットをアプリ A の開発ディレクトリから
移動すればよい。別ディレクトリを作る。ってことだ。

いったん分割したら、パッケージ P に含まれるユニット、厳密にはアプリ A が参照する機能を持つユニットを変えない限り、問題は起きない。
本来は、通常の実行時パッケージを使う状態にまで戻すべき。そうやってデバッグしてからもう一度動的パッケージ版にしたほうが
確実だったのでしょう。
ML-74315 の人は、親アプリのフォームを参照するために大事なユニットの仕様を変更してしまったのですね。



177 :デフォルトの名無しさん:03/06/27 13:18
完全な空白文字列→''
または
スペースのみで構成された文字列→' 'とか'   'とか'   '(全半全)とか

↑を検出するにはどーいうif文を書くのがスマートでしょうか
1箇所だけでしか検査しないのでそのためにわざわざ
正規表現使えるコンポーネントを入れるのもアレですし・・・

178 :デフォルトの名無しさん:03/06/27 13:59
if (Length(Trim(CheckString))=0) then〜

だがこれだけでは全角スペース対応していない。
よって事前にStringReplaceなどで全角スペースを取り除く

179 :143:03/06/27 14:28
>174-176

なるほど〜。
動的で無くてもいい場合に、パッケージだけコンパイルして配布、
って方法でも問題ないっすかね。

ちょっと時間を見て試してみます。
ありがとうございました。

180 :デフォルトの名無しさん:03/06/27 15:08
>動的で無くてもいい場合に、パッケージだけコンパイルして配布、
まさに某がやっていることだよね?

181 :デフォルトの名無しさん:03/06/27 15:12
>>177, 178
StringReplace 二段重ね、最初にすべての半角スペースを削除、次にすべての全角スペースを削除。
結果が空文字列かどうかで判定。
速度がちーと遅いかも知れないが、タブとかも処理できるし、わかりやすい。

182 :デフォルトの名無しさん:03/06/27 15:34
>>177
判定だけならAnsiPosなるものがあります。
0なし、他あり

183 :デフォルトの名無しさん:03/06/27 15:46
>>178,181
ありがとございます
Replaceの結果を見るていうのはちょっと予想外でした

>>182


184 :デフォルトの名無しさん:03/06/27 16:20
>>178
文字列が空であることを調べるのにLengthを使うと
かえって遅くなる罠があると言ってみる。(空文字列比較用に最適化される)
VBとは違うんだよ、VBとは。



185 :Takamori:03/06/27 16:54
HP宣伝
「日曜プログラマー的Delphi」を開設しました。
http://www.geocities.jp/takamori700/

186 :デフォルトの名無しさん:03/06/27 17:55
http://www.geocities.jp/takamori700/tips/idx04_0001.html#0001

すっ、すごい!「goto」使ってる(w

187 :デフォルトの名無しさん:03/06/27 18:01
うほっ!今、俺もそれ見てた。
Exitで同じことできるよねえ?

188 :デフォルトの名無しさん:03/06/27 18:47
あの…。質問があるのですが。
>>185のページをみて。このくらいなら楽にできるなと自信をつけさせる場所なのでしょうか?

189 :デフォルトの名無しさん:03/06/27 18:52
Del厨って嫌な性格だな

190 :Delphi 6 Personal:03/06/27 19:50
初心者向けだと書いてあるぞ。
俺は初心者が見る分には便利だと思うよ(関数のところなんかが)

191 :デフォルトの名無しさん:03/06/27 19:53
implementation

{$R *.DFM}

type
TKeyData = record
fCTRL :Boolean;
fSHIFT:Boolean;
fALT :Boolean;
dKey :Byte;
end;

var
MahoKeydata:array[1..48] of TKeyData;

このMahoKeydataを別ユニットで使うにはどうすればよいのでしょうか?

192 :デルファイの名無しさん:03/06/27 19:56
Delphi関係の日本語の情報が少ないのはDel厨のせいなんだね

193 :_:03/06/27 19:59
http://homepage.mac.com/hiroyuki44/

194 :デフォルトの名無しさん:03/06/27 20:09
>>191
implementationの上へ移動する

195 :191:03/06/27 20:33
>>194
typeとvarの両方を上に上げてみたんですが、ダメでした。

MainForm.MahoKeydata[1].fCTRL := chkCtrl1.Checked;
のようにしてるんですが、ここがいけないんでしょうか?
「MahoKeydataが未定義」と言われてしまいます。

196 :デフォルトの名無しさん:03/06/27 20:48
au.
あの
x=3
とかのは、どこに書き込めばいいのでしょうか。初心者ですいません

197 :デフォルトの名無しさん:03/06/27 21:12
>>195
uses節にMainFormが記述されていない。

198 :191:03/06/27 21:17
>>197
ということはUnit1(MainFormのユニット名)ですよね?
それは記述してあります。

199 :デフォルトの名無しさん:03/06/27 21:23
>>195
MainFormが余計と思う

200 :191:03/06/27 21:36
>>199
うまくいきました!多謝です!
ありがとうございました。

201 :デフォルトの名無しさん:03/06/27 22:38
フォルダ選択ダイアログを表示させたいのですが、
それらしいコンポーネントが見つからないのですが、
Win3.1のならあるみたいなんですが、これしかないのでしょうか?

202 :デフォルトの名無しさん:03/06/27 22:48
コンポーネントじゃなくてSelectDirectory()関数を使え。



203 :デフォルトの名無しさん:03/06/27 22:57
フォームAからフォームBを呼び出して、フォームAを閉じるとフォームBも一緒に閉じるように
したいのですが、どうすれば良いのでしょうか?

204 :201:03/06/27 22:59
>>202
ありがとうございます!!

205 :デフォルトの名無しさん:03/06/27 23:01
FormAHideでFormB.Close;巣りゃいいんじゃないの

206 :203:03/06/27 23:11
>>205
できました。
ありがとうございます。

問題なく動いてるようですが、もしフォームBが開かれていなくて
フォームAを閉じた場合、何か問題はないですか?
ハンドル取って条件指定した方がよいのでしょうか?

207 :デフォルトの名無しさん:03/06/27 23:25
問題なく動いてるならいいです。

208 :203:03/06/27 23:37
>>207
わかりました

209 :164:03/06/28 01:14
>>162  ぬぅ、なんで失敗したのかさっぱり・・・スマソ



210 :デフォルトの名無しさん:03/06/28 02:00
>>185
きれいに作ってあるなぁと思ったらFrontPage使ってた。
プログラマならHTMLべた打ちしてほしい。

↓じゃ、おまえは機械語やアセンブラで書け

211 :デフォルトの名無しさん:03/06/28 02:16
>>185 すごい!! よくまとまってますね〜
とほほさんとこみたいにアーカイブにまとめてローカルで
見れるようにして欲しいな..と言ってみりゅ。

212 :デフォルトの名無しさん:03/06/28 03:58
>>210
どうぞ

0111000011101111000011110100110101101010001010001111001101010110
1010011110101010101001010010010101000011101100101000111110011001
1010100101000000000111100101001010010100101010101010010110010110
1010101011001010010101010101001010101010010101010000111110010100
0101010101010101101000010011010010101001001010110111111000111001
1010100101000101010100110101011010010101010101010001010110101010
1110101001010101010001010010101001100101011011100100011100010101
0101010010100001100110101010101010100011010010100100100101010101
1101001001010000101010110010101010100101010010001101010010101001
0100101010100101010001010100111010101001010110101010010101010011
1010010101010110100001101101010101100101001010101010101010010101
0100101010010100101011001010101011000000101111011011110100101000
0100101100110101001010100110101010101010001010101110010010100101
1010010100101011010100001010101001010010101001010101010100101001

213 :デフォルトの名無しさん:03/06/28 04:03
>>212 ネタなのかマジレスなのか解らん…_| ̄|○

214 :デフォルトの名無しさん:03/06/28 05:27
広告だらけの勘違い糞ページの作者さんお疲れ。

215 :デフォルトの名無しさん:03/06/28 05:38
ホントだ。すげ−あるw

216 :デフォルトの名無しさん:03/06/28 05:53
>>185
なんだこりゃ・・・初心者を使えないダメPGにするためのページですか?
はっきり言ってこの内容は害悪だ
相手が初心者なればこそ、より正しい情報を与えるべきだ
自分自身がまったくわかっていないのに人様に教えようなどとは笑止千万
レベルが高い低いではなく、入門として用を成していない
いますぐページをたたんで郷里へ帰りなさい

217 :デフォルトの名無しさん:03/06/28 08:49
delphiのエディタって何のコンポーネント使ってるんですか?
ああいうの作りたいです

218 :デフォルトの名無しさん:03/06/28 09:04
>>217
IDEのエディタは予め用意されたコンポーネントじゃなくてBorlandが書き下ろしたものと思うが。
テキストエディタが作れるようになったら大したもんだ。

…で、大したことの無いへたれは、TEditorで検索するべし。

219 :デフォルトの名無しさん:03/06/28 09:11
少し前のバージョンなら Resource Hacker(TM) で 覗けたんだけどね。
D6だとCoreIDE60.bpl なんかそれらしいの覗こうとしてもエラーになるようになってる

220 :デフォルトの名無しさん:03/06/28 11:16
>>216
具体的に害悪な部分を指摘してくださいよ。
できないなら低脳な煽りとして君が叩かれることになる。


(しかし初心者向きなのにProfessional前提なのは問題があるなぁ…)

221 :デフォルトの名無しさん:03/06/28 11:40
>>220
叩いてくれ〜(ニヤニヤ

>(しかし初心者向きなのにProfessional前提なのは問題があるなぁ…)
へえ、そりゃあ問題だね(笑)

222 :デフォルトの名無しさん:03/06/28 11:42
Delphiでブラウザを使ったプログラミングやサーバーサイドプロブラミング
をしたいのですがどこかいいサイト無いですか?

223 :デフォルトの名無しさん:03/06/28 12:04
コンソールアプリを実行してGUI側で情報を取得する簡単な方法ありますか?


224 :avi:03/06/28 12:20
友達から拡張子がaviの動画ファイルをもらったのですが、
windows media player8で再生ができません。
コーデックが必要だとメッセージが出るのですが、
そのコーデックがDLできません。
どうすれば見れるようになるのでしょうか?
どなたか教えてください
よろしくおねがいします。

225 :デフォルトの名無しさん:03/06/28 12:22
>>223
やったことないけど
http://www.borland.co.jp/qanda/delphi/d0009376.html

226 :デフォルトの名無しさん:03/06/28 12:33
>>223
簡単な順に
1、ファイル渡し
2、クリップボード
3、GUI側をDDEサーバにする
4、無名パイプ
5、メールスロット
とか

227 :Delphi 6 Personal:03/06/28 12:48
>>224
AVの動画を貰ったって?

228 :デフォルトの名無しさん:03/06/28 12:55
>>226
リダイレクトが無いのがアレだとおもった。

229 :デフォルトの名無しさん:03/06/28 13:11
>>220
>>216に書いてある事が全てだが?
件のページはただの場当たり的リファレンスであって
入門ページを名乗るのは見当違いも甚だしい
しかも悪いことに、設問に対する解が最善のものでは無い場合がある
(既出ではあるがexit手続きで充分なところに無意味なgoto手続き等)
更に悪いことにサイト著者自身が何をしているのか理解していない場合がある
アプリケーションの二重起動抑止のところなどは最悪で
if hMutex <> 0 thenではなくて、まずCreateMutexして
if (GetLastError = ERROR_ALREADY_EXISTS)とするべきだし
自分が理解していない事を堂々と(自称)入門ページに記載しているのは
詐欺まがいの行為である
せめてそれくらいは理解して、さっさと郷里へ帰りなさい

230 :デフォルトの名無しさん:03/06/28 13:15
>>229
お前、WebProg板でも暴れてただろ?

231 :デフォルトの名無しさん:03/06/28 13:55
おいおい
196に誰かレスってやれ

232 :159:03/06/28 13:57
誰か、受信データのバッファを動的に獲得する方法教えてよ・・・
今のままだと受信サイズが予想外のサイズで死んじゃうんだよぅ
マジで頭下げます。すみません、教えて下さい。
私が悪かったので何卒、御教示して下さい・・・

233 :デフォルトの名無しさん:03/06/28 13:57
>>228 
リダイレクトの意味が >>225 ならファイル渡しだし
http://hp.vector.co.jp/authors/VA026252/tips/delphi_anonymous_pipe.html
なら それは無名パイプだ

234 :デフォルトの名無しさん:03/06/28 13:59
>>232
Strings でも、 array of byte でもで
SetLength 使えばいいでしょ?


235 :デフォルトの名無しさん:03/06/28 16:00
>>196
とりあえずインターネットにでも書き込んでみてはどうですか?^^

236 :159:03/06/28 16:19

着信イベントが発生した段階でgetmemを呼び出してバッファを獲得するじゃないですか。
TNMUDPクラスのreadメソッドを使って読み込むときにその先頭アドレスを渡したいんですが
pointer型を変換したりするとコンパイラにお叱りをうけてしまいます。
これを回避したいのですが、どうやって回避したらいいのかが判らないんです

アフォの致傷だからって見捨てないでください・・・

237 :デフォルトの名無しさん:03/06/28 16:25
>>192
日本語のページからdelphiを検索しました。 約70,500件中1 - 50件目 ・検索にかかった時間0.26秒
日本語のページからvisual c++を検索しました。 約54,800件中1 - 50件目 ・検索にかかった時間0.23秒

実はDelphiのほうがVisual C++より資料が豊富
ちなみに「日本語のページを検索」オプションつけてますよ

238 :デフォルトの名無しさん:03/06/28 16:51
>>236
悩んでる原因が判ったよ
なんと TNMUDP の ReadBufferは
procedure ReadBuffer(var Buff: array of char; var length: integer);

と、ちょっと困ったクンな仕様なんだね。


しょうがないから ReadStream を使いなさい。 
Streamなら
rocedure ReadBuffer(var Buffer; Count: Longint);
だから  簡単だ


TempStream := TMemoryStream.Create; して
ReadStream( TempStream ) ;と読み込んで
TempStream .Position:=0 ; と頭に戻して

後は好きなように

239 :デフォルトの名無しさん:03/06/28 16:54
>>237
「ビジュアル」の綴り間違ってるぞ。

240 :デフォルトの名無しさん:03/06/28 17:11
>>239ガナー


241 :デフォルトの名無しさん:03/06/28 17:14
>>239
あっ!間違えた
今度こそ正しいぞ

日本語のページからvisaulstudioを検索しました。 1件中1 - 1件目・ ・検索にかかった時間0.09秒

242 :デフォルトの名無しさん:03/06/28 17:16
拡張子変えてPS2でみれるのかな?

情報キボンヌ

243 :デフォルトの名無しさん:03/06/28 19:02
質問なんですが
例えば takasi's homepage という文字列を使いたいとします。
当然「'」で囲みますよね。でもそうすると'takasi's homepage'となり
takasiの部分で文字列が終わったと見られてしまうんです。
文字列の中にある「'」を文字のまま扱うにはどうすればいいのでしょうか?

244 :デフォルトの名無しさん:03/06/28 19:07
>>243
ヘルプの「文字列定数」を読めばいい

245 :デフォルトの名無しさん:03/06/28 19:12
無料版だからヘルプがないんです・・・・

246 :デフォルトの名無しさん:03/06/28 19:15
'takasi''s homepage'

漏れの無料版には付いてるぞ

247 :デフォルトの名無しさん:03/06/28 19:17
>>243
新手のホームページ宣伝か?
ヘルプもPDFのマニュアルもpersonalに付属してます

248 :243:03/06/28 19:20
今ヘルプ見てるところなんですが
>>245は僕じゃないですよ。

>>244さんありがとうございます。

249 :デフォルトの名無しさん:03/06/28 19:59
>>238
ありがとうごだいますた。
おかげさまで読み込めますた。
構造体(hogehoge)をきっておいて

var
cmd : hogehoge;
begin
streambuf := tmemorystream.Create;
wk := @streambuf;

nmudp1.ReadStream(streambuf);

こうすることによりSteamBufを戻さなくてもwkのメンバ変数を参照することにより
好きなメンバにアクセスすることができますた。
ただ、初心者なんでよくわかってないところもあります。

UDPの受信イベント内でTmemorystream.createとやったときには
受信イベントを抜けたときにもメモリの値は保持されますか?
一度getmemして、獲得したメモリをTMemoryStream.Createで受けた処理をしたあとに
必要に応じてFreeすべきでつか?(その場合の管理はObjectListを使うつもりです)

いろいろこれから試行錯誤してみたいと思っておりまふ・・・・

250 :デフォルトの名無しさん:03/06/28 20:10
>>249
なんか筋の悪そうな事をやろうとしてるように思う。

文字列が入ってるなら
             SetLength(ReturnString , streambuf .Size);
streambuf .ReadBuffer(Pointer(ReturnString)^, streambuf .Size);

と文字列にして返してしまえば後の取り扱いが楽だ。


251 :ななしへたぐらま ◆XcB18Bks.Y :03/06/28 23:10
>>185
とりあえずわかる範囲で
#0001
このコードをコピペしてもコンパイルできないようです.G_AppPathって#0006のGuユニットを使っているのでしょうけどこれが必要ならそう書くべき.
またサンプルなら他の自作ユニットがなくても動くようにする方が適切だと思います.

あと,この例なら作業用ファイルは用意しなくてもファイルストリーム一つで書き換え可能ですよ.
直接書き換えが不可能な処理の場合は作業用ファイルの代わりに
メモリストリーム(TMemoryStream)を使うと良いでしょう.

#0005
initialization節とfinalization節にはbeginとendは不要ですよ.

>>196
xという変数を使いたいのでしたら…

procedure TForm1.Button1Click(Sender: TObject);
var // これから変数を宣言するぞ,という印
x: integer; // xという名前の整数型変数だぞという意味
begin
x := 3; // 変数xに3という値を代入(代入は『:=』なので注意)
ShowMessageFmt('xの値は%dです', [x]);
end;

>>218
TEditorがあるので無理して自作する必要はないかもですね.


252 :Delフサギコ ◆A6VzDeLphI :03/06/29 00:00
           _________
   ∧,,∧   / TEditorは
  ミ;゚Д゚彡 <  プロポーショナルフォントが
   ミつ旦(ミ~~ \ 描画できなかったなあ
 @ミ   ミ     ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   ∪''∪  AAがちゃんと表示されないですの…

日本物ならこちらなど。
http://home1.infonia.ne.jp/~delphian/delphi/compo/labeledt.html

海外ものなら
DreamMemoとかも人気あるらしいっす。

某がエディタ部を公開してくれたらうれしいですね。

253 :デフォルトの名無しさん:03/06/29 00:46
>>252
このまえ、ちょっとだけ話題になったけど、どうやら某はプログラミング用エディタを
売っているようだ。(たしかメリケンじゃ売れてるんでしょ?)
そういうノウハウが沢山詰まっているエディタとかは公開しないんじゃないかな。

254 :デフォルトの名無しさん:03/06/29 00:49
SynEditとかも結構いいよ。

255 :デフォルトの名無しさん:03/06/29 01:20
w2kやxpだと正常に動作するソフトが、98だと
「Exception EReadError in module ****.EXE at 0001F80B.
ComboBox24.Items.Strins の読み込み中のエラー
:A call to an OS function failed.」
というエラーが出て起動しません。
同じ症例が数件あるのですが、何か原因の特定はできるでしょうか?
リソース不足のような気がするのですが・・・

256 :249:03/06/29 10:32
>>250
接続機器から返すのはレジスタの内容とRS-422で受信したデータとPC98時代の漢字コードなんで
混在してデータが帰ってくるので構造体を切ったほうが楽かと思いました。
制御ばっかしやってたのでアプリは初めてです。
むずかしくて涙がこぼれそうになります・・・・

257 :デフォルトの名無しさん:03/06/29 10:59
>>256
バイナリ+文字データで、固定長なの?
それなら、Record型を定義しておいて

streamBuf.ReadBuffer( レコード型変数 , SizeOf( レコード型変数 ) );

受信処理でこのレコード型変数か(1回に複数レコード受信するなら)
レコード型の動的配列を返すのがいいんじゃないの?


258 :デフォルトの名無しさん:03/06/29 19:44
質問します。
ユニットを用途別に分けたいのですが、例えば、標準でUnit1.pasにForm1のOnCreateイベントが記述してあるとして、それを新たに作ったユニットに
移転させることは出来ますか?
また、フォームに乗っかっているTMemoなどに文字列を設定するような手続きなどは、
そのクラスが書いてあるユニット以外にも書けますか?
よろしくお願いします。

259 :デフォルトの名無しさん:03/06/29 19:56
>>258
モジュール化の仕方のレベルで考え直すべきだと思った。


260 : ◆bro13ZUdHQ :03/06/29 20:02
http://www.geocities.co.jp/Milano-Killer/8366/CompOJ.html
このページを参考にしてOpenJaneのコンパイルをしようとしてるのですが、

>Jane2ch.dpkのフォルダ指定及びActiveXの取り込み
>同様に『Microsoft Internet Controls (version1.1)』で『インストール』
のところでインストールボタンを押すと、
---------------------------
エラー
---------------------------
クラス名 'TWebBrowser' は既にインストールされています.
---------------------------
OK
---------------------------
とでてしまいます。

どうしたらいいのでしょうか?


261 :デフォルトの名無しさん:03/06/29 20:05
>>260
とばして次のステップへ。

262 :デフォルトの名無しさん:03/06/29 20:08
何かもう中上級Del使いって保母さんみてえだな。

263 :デフォルトの名無しさん:03/06/29 20:08
>>259
ただスクロールが大変という理由で解決策を探していました。
もうちょっと勉強してきます。

264 :デフォルトの名無しさん:03/06/29 20:15
delは金食い虫だな。
皆、MSに移行するべき。

265 :デフォルトの名無しさん:03/06/29 20:19
>>264
金が無い奴はそもそもオプソに逝くと思うが。(w

266 : ◆bro13ZUdHQ :03/06/29 20:42
>>261
とばして進めると

>コンポーネントの確認(しつこく確認)
>メニューの『プロジェクト』−『オプション』−『パッケージ』タブでJane2ch.bplを選んで
>『コンポーネント』クリックすると一覧が出ます。次の5つがあることを確認して下さい。
>THogeListView THogeTextView TScriptlet TWebBrowser TWebBrowser_V1

ここで、TWebBrowser TWebBrowser_V1の2つが表示されて
くれないのです。

よろしくおねがいします。

267 :_:03/06/29 20:44
http://homepage.mac.com/hiroyuki44/hankaku10.html

268 :デフォルトの名無しさん:03/06/29 20:46
ASPプロジェクトで済むだろ。
バカや炉多すぎ。

269 :貧乏脱出!これであなたはお金持ち:03/06/29 20:47
普通に働いてお金持ちになれるのは全体の1%のみって本当!?
本当にお金持ちになるにはやはり「副収入」が必要!
一日30分 おうちでコピペ、コピペ!
嘘だと思うんならランキング見てみてくださいよ↓↓
(直リン不可)
http://www.adultshoping.com/addclickport.cgi?pid=1053353765(直リン不可)

/////

270 :デフォルトの名無しさん:03/06/29 20:50
>>266
そこも飛ばしちゃっていいよ。


271 :デフォルトの名無しさん:03/06/29 21:27
Form1を表示せずにタスクバーだけ残すということは出来ないのでしょうか?
とりあえず、Form1.Hideではタスクバーまで消えてしまいました。

272 :デフォルトの名無しさん:03/06/29 21:34
TopかLeftにマイナスの値入れて画面外に移動させたりとか

273 :デフォルトの名無しさん:03/06/29 21:46
でるぱいを起動させるときにどれをクリックしたらいいんですか?
多すぎて分かりません。

274 :デフォルトの名無しさん:03/06/29 21:49
保守

275 :デフォルトの名無しさん:03/06/29 21:51
>>272
Left := -Widthで見た目は消えてますね。
でも位置を変えたくないのです。

276 :デフォルトの名無しさん:03/06/29 21:52
>>273
柱と地球のアイコンをクリック

277 :デフォルトの名無しさん:03/06/29 21:55
>>276すみません。
どのフォルダに入ってますか?

278 :デフォルトの名無しさん:03/06/29 21:57
Delphiをインストールしたフォルダです

279 :直接起動君:03/06/29 22:00
C:\Program Files\Borland\Delphi5\Bin\delphi32.exe
C:\Program Files\Borland\Delphi6\Bin\delphi32.exe
C:\Program Files\Borland\Delphi7\Bin\delphi32.exe

280 : ◆bro13ZUdHQ :03/06/29 22:01
>>270
とばしてコンパイルまで来てコンパイルエラーになってしまいます。
---------------------------
エラー
---------------------------
';' が必要ですが 識別子 が見つかりました.
---------------------------
OK
---------------------------

procedure MenuThreadRefreshClick(Sender: TObject);
procedure ZoomClick(Sender: TObject);
procedure ThreadChkNewResButtonClick(Sender: TObject);  <<−−ここでエラー
procedure ThreadWriteButtonClick(Sender: TObject);
procedure TabControlChange(Sender: TObject);

何でこんなとこでエラーになるのかわからないです。

281 :デフォルトの名無しさん:03/06/29 22:07
日頃の行いが悪いとそうなる

282 :貧乏脱出!これであなたはお金持ち:03/06/29 22:30
普通に働いてお金持ちになれるのは全体の1%のみって本当!?
本当にお金持ちになるにはやはり「副収入」が必要!
一日30分 おうちでコピペ、コピペ!
嘘だと思うんならランキング見てみてくださいよ↓↓
(直リン不可)
http://www.adultshoping.com/addclickport.cgi?pid=1053353765(直リン不可)

////////////

283 :デフォルトの名無しさん:03/06/29 22:56
TMemIniFileでIntegerの範囲を超える数値を記録する方法を教えてください

284 :デフォルトの名無しさん:03/06/29 23:32
>>275
見えなきゃ、位置とか関係ないじゃん。
2000以降でもいいなら、透明にするとか。


285 :デフォルトの名無しさん:03/06/29 23:35
>>283
TMemIniFileを継承して、Int64を読み書きするメソッドを追加するか、
バイナリとか文字列で記録するか。でいいんじゃないの?


286 :デフォルトの名無しさん:03/06/29 23:46
OnKey*イベント以外で、
普通の処理中にあるキー(Shiftとか)が押されているか否かを検出する方法は?

287 :286:03/06/29 23:51
GetKeyState で出来ました。

288 :デフォルトの名無しさん:03/06/29 23:51
にゃんこりゃひょ。

289 : :03/06/29 23:54
>>255
マルチポストみっけ。
マナー悪いな。
あっちもレス付いてないぞと。

290 :デフォルトの名無しさん:03/06/30 01:50
StringGridの上をマウスが通過したときに、 どのセルの上にマウスカーソルがいるか
を調べることってできるのでしょうか?
どうぞ よろしく御願いいたします。

291 :255:03/06/30 02:32
>>289
どうしてもこちらでレスが付かなかったので痺れをきらして
あちらに書き込んでしまいました。
ごめんなさい。

292 :デフォルトの名無しさん:03/06/30 03:08
>>290
MouseMoveイベントでMouseToCellメソッドを使えばわかるんじゃないかな。
StringGridなんて使ったことが無いけど、ヘルプみたら速攻で見つかったぞ。
聞く前にヘルプのメソッド一覧くらいはさらっと読みましょう。


293 :デフォルトの名無しさん:03/06/30 10:59
TServerSocketと
TClientSocketを使っているのですが
非同期ソケットエラーが出ます。

このエラーはどんな時に出るのでしょうか?

ヘルプを探しても見つかりませんでした。
宜しくお願いします。

294 :293:03/06/30 12:00
ちなみにソケットエラーの番号は
10053です。

つまり
「非同期ソケットエラーです。 10053.」
という例外ダイアログが出てきてしまうという事です。

このエラー番号の意味などがのっているHPなどありましたら
教えて下さい。

宜しくお願いします。

295 :デフォルトの名無しさん:03/06/30 12:16
ほいhttp://homepage1.nifty.com/yito/anhttpd/winsock_error.html

296 :デフォルトの名無しさん:03/06/30 13:59
DrawGridで指定行だけ背景色を変えるにはどうすればいいんでしょうか?

297 :デフォルトの名無しさん:03/06/30 14:21
>>296
DrawCellをオーバーライドする。
メソッドの中で、Canvas.FillRect(ARect)する。

か、背景色だけなら同じくDrawCell中で、Canvas.のペンかブラシの色を変えるだけでも可能だったかも。

298 :297:03/06/30 14:22
もちろん、指定行以外では、inheritedだけしとく事。

299 :293:03/06/30 15:18
>>295
即レスありがとうございます!

300 :デフォルトの名無しさん:03/06/30 17:23
>>271
.dprに
Application.CreateForm(TForm1, Form1);
Application.ShowMainForm := False; <----追加
Application.Run;

でどうだろう。
これだとタスクバーも消えちゃうかな?

301 :デフォルトの名無しさん:03/06/30 18:10
ボタン1をクリックしたらボタン2が作成されて表示される
みたいなことは出来ますか?

302 :デフォルトの名無しさん:03/06/30 18:17
>>301
出来るけどあんまり意味がない。設定も面倒なだけだし。
最初からボタン2も配置しVisible=Falseにしておいて、
ボタン1イベントでVisible=Trueにしたほうが楽。

303 :301:03/06/30 18:18
>>302
了解です

304 :デフォルトの名無しさん:03/06/30 18:26
ユニコードの扱いがおかしい・・・

305 :18:03/06/30 21:20
>>192
日本語のページからdelphiを検索しました。 約70,500件中1 - 50件目 ・検索にかかった時間0.26秒
日本語のページからvisual c++を検索しました。 約54,800件中1 - 50件目 ・検索にかかった時間0.23秒

実はDelphiのほうがVisual C++より資料が豊富
ちなみに「日本語のページを検索」オプションつけてますよ

306 :デフォルトの名無しさん:03/06/30 23:28
ここでもDel厨のイカサマ炸裂!

307 :デフォルトの名無しさん:03/07/01 01:04
先生!チャットソフトを作りたいです
TClientSocketを使ってHTTP(2ちゃんブラウザを作ったり)なんてのは問題なくできるのですが
どうやって「受信待ち」するのかわかりません
ネットワークの神様お願いします!!

308 :デフォルトの名無しさん:03/07/01 01:05
悪いことはイワンからまずはC+socketで修行しとけ

309 :ニーチェ:03/07/01 01:06
神は死んだ!

310 :デフォルトの名無しさん:03/07/01 02:04
>301
visibleでon・offもいいけど、ユーザー側にとってはenabledを使って押せないボタンとして
表示してある方がフレンドリかな。ある機能が実装されているということと、それの発動には
一定の条件が必要ということを予め示せるから。重箱の隅な話でごめん。

311 :デフォルトの名無しさん:03/07/01 02:25
>>308
>>309
こういうレスがつくってことは何か頓珍漢な事を言ってしまったでしょうか
神が死んでは仕方有りませんのでとにかくC言語の線から攻めてみます
アドバイスありがとうございました

312 :デフォルトの名無しさん:03/07/01 02:33
>307
キリスト者じゃない我々には、死んだ神も、神を殺した人間も関係有りません。309はあぼーんで。
308は伝統的なソケットの作成を知っておけと言いたいのでしょう。Cのやり方を知るのは為になると思いますよ。

313 :デフォルトの名無しさん:03/07/01 02:39
「Delphiによるソケットプログラミング入門」なんて本があれば
それで十分なんだけどな。本当は。これもマイナー開発環境の悲劇だな。

314 :正論:03/07/01 09:46
日本語のページからdelphiを検索しました。 約70,500件中1 - 50件目 ・検索にかかった時間0.26秒
日本語のページからvisual c++を検索しました。 約54,800件中1 - 50件目 ・検索にかかった時間0.23秒

315 :デフォルトの名無しさん:03/07/01 09:46
>312
キリスト者ではないわれわれにとっても、デイタラボッチは死んでしまったのだよ。

316 :デフォルトの名無しさん:03/07/01 11:41
アイコンではなく、画像そのものをタブにするような
格好(゚∀゚)イイ!PageControlか、TabControl知りませんか〜。
オーナードローしようとすると、タブの中だけ描画になるんで、今ひとつ…。

317 :デフォルトの名無しさん:03/07/01 12:32
>>307
チャットのサンプルが
\Demos\Internet\Chat
にあるけど、それじゃだめかな

318 :デフォルトの名無しさん:03/07/01 13:06
こで作ってみたんですがインデックスがないってできます・・
だれかおしえてくださいませんか
Sub 作業日取得()
Dim program_id As Integer
Dim start_date As Integer
Dim end_date As Integer
Dim check_start As Integer
Dim row As Integer
Dim col As Integer
Dim c As String
Dim start_flag As Boolean
program_id = 3'IDの番号()
start_date = 9 ' 開始日番号()
end_date = 10 ' 終了日番号()
check_start = 11 ' ■形式のデータが入っている最初の列番号(1オリジン)
With Sheets("表(詳細)")
row = 3


319 :デフォルトの名無しさん:03/07/01 13:09
Do While .Cells(row, program_id).Value <> ""
.Cells(row, start_date).ClearContents
.Cells(row, end_date).ClearContents
col = check_start
start_flag = False
Do While col < 200
c = .Cells(row, col).Value
If Trim(c) <> "" Then
If Not start_flag Then
start_flag = True
.Cells(row, start_date).Value = .Cells(1, col).Value
End If
.Cells(row, end_date).Value = .Cells(1, col).Value
End If
col = col + 1
Loop
row = row + 1
Loop
End With
End Sub
なんですが・・
エラーがでてしまって・
こんな馬鹿な僕に教えてください神様

320 :デフォルトの名無しさん:03/07/01 14:08
皆、つっこみたい気持ちは分かるぞ。しかしだ。大人なんだからこらえるのだ!!

321 :デフォルトの名無しさん:03/07/01 14:38
>>320
お前がこらえきれていない(w

322 :デフォルトの名無しさん:03/07/01 15:00
>Sub 作業日取得()
( ´_ゝ`)?<Delphiって日本語使えたっけ?

323 :デフォルトの名無しさん:03/07/01 15:09
キリスト教の神って全知全能なんだろ
な ん と か し て や れ よ

324 :デフォルトの名無しさん:03/07/01 15:12
誰も偽者がコピペしたものだと気づいていない。

325 :デフォルトの名無しさん:03/07/01 15:50
>>322
使えませんよ。
いくらなんでも、そんなこと知らないなんて、才能無いですね。

326 :デフォルトの名無しさん:03/07/01 17:17
LightReport2のTLRGridPanelでDBを印刷中にキーブレークで途中で改ページする方法を教えてください。

327 :デフォルトの名無しさん:03/07/01 17:30
ある一つのMDI子フォームを、MDI子フォーム達の中では最前面に表示するようにするには
どのようにすればよろしいのでしょうか?よろしくおねがいします。

328 :デフォルトの名無しさん:03/07/01 21:09
最前面に表示したいFormオブジェクトのShowメソッドを使えばよろし。

329 :デフォルトの名無しさん:03/07/02 00:35
>>317
Personalなので見てみることはできませんでしたが
それに関係するやり取りを探すことでチャットを完成できました
その存在を教えていただいたおかげで解決したようなものです
本当にありがとうございました

ちなみにTClientSocket同士で通信しようとしていたのが最大の敗因で
TServerSocketの解説ページを見つけたのが勝因でした(BCBでの解説でしたけど)


330 :デフォルトの名無しさん:03/07/02 01:05
Memo1にある内容をそっくりそのままMemo2に移すにはどうすればいいのでしょうか?

331 :デフォルトの名無しさん:03/07/02 01:06
よく使うコンポーネントの取り回し方を
具体的に教えてくれる本があればいいんだけどね。
TMemoが載っている本ははいくらでもあるんだがTListViewとかはほとんど無い。
初→中へステップアップするのに結構な努力を強いられるのは
マイナー環境とはいえ、誰かなんとかしてほしいところ。

332 :デフォルトの名無しさん:03/07/02 01:10
Memo2.Text := Memo1.Text

333 :デフォルトの名無しさん:03/07/02 01:20
(;・∀・)・・・本当にくだらない質問だったようで、どうもすいませんでした。
今回は複数行になるので、Memo2.Linesとすることにします。

334 : :03/07/02 01:22
んん?「text」で問題無いと思うが<複数行


335 :デフォルトの名無しさん:03/07/02 01:23
>>331
ライブラリは何でもそうだと思うけど、まずはVCLの癖をつかむのがいいと思う。
とにかく触りまくって、ソース見まくって、使い倒す。
データをアクセスする部分を中心に触るのがいい。TListViewだったらItemsプロパティとか。


336 :デフォルトの名無しさん:03/07/02 02:04
>>331
Win32タブに乗ってるのは、StandardVCLより癖があるから、習得が一気に難しくなるよね。
サンプルソースとか見て頑張るしかない〜

337 :デフォルトの名無しさん:03/07/02 02:08
コンポなんてフォームに乗っけてヘルプ全部読んで全機能つついてみればいいんだよ。
ただそれだけ。

338 :デフォルトの名無しさん:03/07/02 07:53
○ンポーネント

339 :デフォルトの名無しさん:03/07/02 10:31
>>333
Memo2.Lines.Assign(Memo1.Lines);
これでも出来るよ。

340 :デフォルトの名無しさん:03/07/02 10:34
>>337
俺もそんな感じで収得したなぁー
別プログラムで簡単なサンプル作ったりして…

DB関連のイベントのタイミングを知る時は
ShowMessageやMemoに書き出したりもしたな。

341 :デフォルトの名無しさん:03/07/02 15:56
OpenDialogのコンポって文字コード選択のコンボボックスが表示できないんだね。
Delphi7では出来るようになってるのかな?

342 :デフォルトの名無しさん:03/07/02 17:00
別のパネル上にあるすべてのラジオボタンから一つだけ選択させる、
という設定はどうしたら良いのでしょう?

343 :デフォルトの名無しさん:03/07/02 18:57
文字コード選択って標準のOpenDialogについてるものなの?
あの手のがついてるのは自力で改造してると思ってたけど。

344 :デフォルトの名無しさん:03/07/02 19:19
DELPHIのことは全く知らない初心者です。
ちょっとDELPHIでゲーム作りたいんだけどその方法を詳しく
説明してくれるサイトありませんか?
あったら教えて下さい。

345 :デフォルトの名無しさん:03/07/02 20:45
>>235>>251
ありがd

346 :デフォルトの名無しさん:03/07/02 21:58
>>343
自力だよ


347 :デフォルトの名無しさん:03/07/02 22:14
むしろ地力

348 :デフォルトの名無しさん:03/07/02 23:10
>>344
http://www.campus.ne.jp/~ishigami/CREATION/MAKING/index.html

349 :デフォルトの名無しさん:03/07/02 23:31
>>343
WindowsXP付属のメモ帳に文字コードのコンボボックス付いてたんで

350 :デフォルトの名無しさん:03/07/02 23:51
いや、メモ帳はサンプルプログラムじゃないし。

351 :デフォルトの名無しさん:03/07/03 00:01


352 :デフォルトの名無しさん:03/07/03 00:33


353 :デフォルトの名無しさん:03/07/03 00:45
クエスチョンマーク
ビックリマーク

縦読みすると……ですか
2ちゃんねるの世界はリストラも厳しい

354 :デフォルトの名無しさん:03/07/03 00:52


355 :デフォルトの名無しさん:03/07/03 01:00
すみません、教えて下さい。

TreeViewでAbsoluteIndexではなく
展開されていたり畳まれていたりする現在のツリーの状態で
調べたい(例えばSelected)アイテムが
ツリーの一番上(.Item[0])から数えて何番目にあたるかを
知るにはどの様にすれば良いでしょうか?

356 :デフォルトの名無しさん:03/07/03 01:25
index := -1;
node := TreeView1.Selected;
while node <> nil do
begin
 node := node.GetPrevVisible;
 Inc(index);
end;

一番上が0

357 :355:03/07/03 01:39
>>356
即レス誠に有難うございます。
お陰で思い通りの動作を得る事ができました、多謝。

358 :デフォルトの名無しさん:03/07/03 05:55
>>348
そこの管理人は近藤級の毒電波・・・

>>344
【Delphi】 ゲームつくるぞ(゚Д゚)ゴルァ 【作れば?】
http://bbs.gamdev.org/test/read.cgi?bbs=gamedev&key=1054282821

359 :デフォルトの名無しさん:03/07/03 09:42
delphi7って、エディタの配色は自由に変更可能になりましたか?

360 :デフォルトの名無しさん:03/07/03 12:46
DB触るのに各Formが勝手にADOStoredProcとかバンバン操作しちゃっていいもんかな?
なんか美しい!(゚∀゚)って感じの作り方ありませんか?

361 :デフォルトの名無しさん:03/07/03 12:53
>>360
データモジュール、使ってる?

362 :360:03/07/03 13:03
>361

DataModuleにADOStoredProcとか置いて使おうとしてますが・・・
そのままレコードセット触ったりしたら、なんかエレガントじゃない気がして・・・

363 :デフォルトの名無しさん:03/07/03 13:17
WinXP + Del7の環境で、XPManifest使わない状態で、
何でScrollBarは他のコンポのスクロールバーと表示が違うのYO!?

364 :359:03/07/03 14:19
ごめんなさい、もう一度聞いていいですか?
delphi6ではエディタの色を16色の中でしか選択出来なかったのですが、
delphi7では自由に変更可能になっているでしょうか?
なっているなら購入しようと思っているのですが・・・


365 :デフォルトの名無しさん:03/07/03 14:41
>364
少なくとも設定画面からは16色しか選べないな…

366 :デフォルトの名無しさん:03/07/03 15:49
>>364
レジストリいじれば?

367 :デフォルトの名無しさん:03/07/03 19:46
もうすぐ8が出るのに今7買うの?

368 :Delphi 6 Personal:03/07/03 19:48
>>363
スクロールバーが元々Visual Styleに対応してるから

369 :デフォルトの名無しさん:03/07/03 21:06
>368
ちゅーことは、ScrollBarは実は他のものとは異なるコントロールなの?(゚Д゚)

370 :デフォルトの名無しさん:03/07/03 22:47
すみません。

ttp://www.m-mix.com/Program/Component/
ここのMOStringGridを使おうとして、なんとかDelphi7に入れられたのですが、
セルをカレンダーにして、日付を選んでフォーカスを移動すると
変な日付(例えば203//7//03)が入ってしまいます。

処理の流れを追っても何処でそういう文字列をセットしてしまっているのか
わからないんですが…。

どうやったら直せるでしょうか?

371 :デフォルトの名無しさん:03/07/04 01:34
MIDIやWAVE等々の音量を調節するプログラムを作りたいのですが、
googleなどで検索しても参考になるサイトがなかなか見つかりません。
どなたか、為になるサイト又は書籍をご存知の方はいらっしゃらないでしょうか。
既存のコンポーネントはなるべく使いたくないでつ。。。

372 :デフォルトの名無しさん:03/07/04 03:15
>>369
XPの仕様でしょ。VCLのせいではないよ。
APIのみでSCROLLBARクラスのコントロールを作っても同じ現象になる。


373 :371:03/07/04 03:43
MIDIとWAVEは検索ワードを変えたら見つかりました。。
なんかうまくいきそうなので、371は見なかったことにしてください。。

374 :デフォルトの名無しさん:03/07/04 05:51
ポップアップメニューがポップアップしてるかどうかの状態はどうやって取得すればいいの?

375 :デフォルトの名無しさん:03/07/04 11:02
背景色にあわせて自動的に文字色を変えたいのですが、
それぞれをいちいち指定するのが面倒なので、

背景が白っぽかったら、黒文字
背景が黒っぽかったら、白文字

背景が赤っぽかったら、青文字

みたいに自動的に色を計算してくれる関数なりクラスなりどこかに落ちてませんか?

cl := ColorCalc($77FF77);
ってやったらclに適正な色が入るようなのが理想です。

376 :デフォルトの名無しさん:03/07/04 12:17
>>375
$色 - $ffffff の結果を Abs してみるのはどうだろ(反転)

377 :たぶん:03/07/04 12:45
こんな感じでうまくゆかないかな
function colorCacl(c:TColor):TColor;
begin
Result := c xor $FFFFFF; //とりあえずビット反転してみて
//その輝度が似てたら
 if abs(
    ( c and   $FF)-(Result and $FF)
   +(( c and $FF00)-(Result and $FF00) shr 8)
   +(( c and $FF0000)-(Result and $FF0000) shr 16)
   )<128
 then result := $ffffff and c+($808080);
end;



378 :375:03/07/04 18:01
>>376
>>377
ありがとうございます。

うまく出来ました。

379 :375:03/07/04 19:08
>>377
馬鹿みたいに何も考えずにただコピペしたら出来ました。
ありがとうございます。

380 :デフォルトの名無しさん:03/07/04 19:53
ttp://www23.big.or.jp/~utamaro/binary/up0267.jpg
↑こんなポップアップヒントを表示するコンポーネントってありますか?


381 :デフォルトの名無しさん:03/07/04 20:29
プログラム実行中に変数を作りたいんですがどうやったら実現できるのですか?

382 :デフォルトの名無しさん:03/07/04 21:48
>>376
なぁ、素直に、

$ffffff - $色
($色 <= $ffffffは保証されてるわけで。)

ではあかんのか?




383 :デフォルトの名無しさん:03/07/04 21:49
>>381
ポインタを使えば可能。


384 :デフォルトの名無しさん:03/07/04 22:36
>>374の回答まだ〜?

385 :デフォルトの名無しさん:03/07/04 23:00
>>384
ポップアップを表示したときにON
非表示にしたときにOFF
とかフラグ持っていればいいんじゃないの?

386 :376:03/07/04 23:06
>>382
言われてみればそうだね
適当なこと書いてすまんかった>>375

387 :デフォルトの名無しさん:03/07/04 23:57
>>373
見なかったことに・・・ではなく、ぜひ解決したら指針を報告しに来る、とか、
参考になったページを晒すとかして下さい。
そうしておくことで、もし同じことで悩んで検索してこのスレにきた人の参考にもなります。
あなたが自分では無駄でゴミな質問をしたと思っても、
対処によってはまったくことなる投稿にすることができます。

>>381
もうちょっと具体的にやりたいことを書いてください。

388 :デフォルトの名無しさん:03/07/05 00:38
TActionクラスを継承し、独自のActionクラスを作成しました。
デザイン時にActionListの編集で独自のActionクラスを追加するにはどうすればいいのでしょうか?


389 :373:03/07/05 01:33
>>387
そうかもしれませんね。
では参考にしたページを貼っておきます。
ttp://www.jnishida.com/tips/delphi/del-0026.htm

WaveOutSetVolume(デバイス, 音量[0〜65535]);
MidiOutSetVolume(デバイス, 音量[0〜65535]);
↑これでうまくいくようなのですが、これを使って設定すると、なぜかパンの値が左チャンネルに寄ってしまいます。
なんでだろう〜?

あと、
ttp://forum.nifty.com/fdelphi/samples/00067.html
ここだとデバイス番号は0だけを指定してるんですけど、こっちでも問題無いのでしょうか。
私の環境だとMIDIデバイスの数は9個だったんですけど、
そのうちMidiOutSetVolumeで設定できたデバイス番号は3と4だけだった。
ほかの番号のものは使わなくてもいいのかな?というのが今抱えている問題です。

長文すみませんでした。。

390 :デフォルトの名無しさん:03/07/05 01:37
すみません、TListにオブジェクトをいろいろ入れているのですが、解放の仕方について教えてください。
たとえば、TListにTCanvasのインスタンスを入れるとします。
中身の解放の時は、
List[n].Free;でいいのでしょうか?それとも、TCanvas(List[n]).Free;のようにもとのクラスでキャストしてから
解放しなければいけないのでしょうか?


391 :デフォルトの名無しさん:03/07/05 01:45
TEditに3桁の数字を表示するようにしているんですが、
デフォルトだとMaxLengthを3にしておくとたとえば1592が代入
されたら下3桁の592と表示されてしまいます。
4桁以上の数字が代入された時に999にするにはどうすれば
よいのでしょうか?

392 :391:03/07/05 01:48
すみません、自己解決しました。

393 :デフォルトの名無しさん:03/07/05 02:04
何故、3分 (01:45〜01:48)で解決するような内容を質問するんだろう

394 :ミ,,゚Д゚彡 ◆A6VzDeLphI :03/07/05 02:59
>>380
タスクトレイアイコンのバルーンヘルプなら
http://homepage1.nifty.com/~okapon/download/index.html

普通の時のポップアップヘルプは
どこかにあったような気がするが、
脳内やググで検索しても
ヒットしませんでした。

395 :ミ,,゚Д゚彡 ◆A6VzDeLphI :03/07/05 03:02
>>388

procedure Register;
begin
RegisterActions('', [TNewAction], nil);
end;


396 :デフォルトの名無しさん:03/07/05 04:03
>>395
おー、そんなのがあるんだ。アリガトン。


397 :デフォルトの名無しさん:03/07/05 06:17
>>380
ttp://homepage1.nifty.com/MADIA/delphi/old.htm
のその他のところのアーカイブに入ってるやつは?

>>385
いつ非表示になったかがわかんないんだよー。
無理なのかなー。

398 :デフォルトの名無しさん:03/07/05 08:39
>>390
前者でいい。
詳しくはオブジェクト指向のポリモフィズムについて勉強して下さい。

399 :デフォルトの名無しさん:03/07/05 09:11
>>390
× TList
○ TObjectList

それから TCanvas を動的に作って管理して解放するって事は
Handleに GetDC とかで得たハンドルを渡してると思うのだけど、
その場合、TCanvas を解放しても自動的にReleaseDCとかされ
ないので注意する事。



400 :デフォルトの名無しさん:03/07/05 09:16
>>399
だとしたらTObjectListで自動的に開放なんてさせちゃ困るのではないのか?

401 :デフォルトの名無しさん:03/07/05 10:10
>>394
>>397
ありがとー

402 : :03/07/05 10:24
すみません。

P****.TXT のように頭文字がPで拡張子がTXTのファイルを
一括で削除する方法を教えてください。

DOSだと、Del P*.txt で削除できますが、DelphiだとDeleteFile('P*.TXT');
で無理でした。(汗)


403 :デフォルトの名無しさん:03/07/05 10:45
>>402
var
  F: TSearchRec;
begin
  if FindFirst('P*.txt', faAnyFile, F)=0 then
  begin
    repeat
      DeleteFile(F.Name);
    until FindNext(F)<>0;
    FindClose(F);
  end;
end;

404 : :03/07/05 11:13
>>403

有り難う御座います。m(__)m
早速組み込んでみます。

405 :デフォルトの名無しさん:03/07/05 11:42
>>364-366
「カスタム」で選べるだろ、と思ったのだが、これって使えないのね。
なんのためのカラーダイアログなのかと小1時間・・・。


406 :デフォルトの名無しさん:03/07/05 11:44
>>400
だから、それをする時はTCanvasを継承して Createで GetDCしてDestroyでReleaseDCする必要があるね

407 :デフォルトの名無しさん:03/07/05 11:48
>>406
それならコレクションの方を継承するのが筋ではないか?

特定のデータを扱いたいからデータ構造に手を加えるというなら解るが、
特定のデータ構造に入れたいからデータに手を加えるというのは本末転倒かと。

408 :デフォルトの名無しさん:03/07/05 11:56
手段のためには目的を選ぶな。


409 :デフォルトの名無しさん:03/07/05 12:58
>>408
消えろ水母野郎

410 :デフォルトの名無しさん:03/07/05 14:13
>>407
コレクションをって、例えば TMyCanvasList とか作ってって事?
そうしたいならそうすりゃいいけど、そうするとTCanvas継承しか入れられなくなるし、
だいいち、必要なのはReleaseDCではなくDeleteDCかもしれないじゃないか。
だから、ここは DestroyでReleaseDC するTCanvas継承と DestroyでDeleteDCするTCanvas継承をそれぞれ作る方がいいよ

411 :デフォルトの名無しさん:03/07/05 14:31
>>397
WM_EXITMENULOOPで分からないかな。


412 :デフォルトの名無しさん:03/07/05 20:02
Delphiって便利なの?
今はデルファイ6のパーソナルバージョンのみ無料で手に入るの?

413 :デフォルトの名無しさん:03/07/05 20:21
>>412
いまから始めるならC#にしとけ。



タダじゃ手に入らんけどな(w


414 :デフォルトの名無しさん:03/07/05 20:22
コンパイラだけなら無料で手に入れられたような。

415 :デフォルトの名無しさん:03/07/05 20:24
>>414
それは・・・いまからDelphiとか言ってる香具師に勧めていいのか?(激藁


416 :デフォルトの名無しさん:03/07/05 20:24
>>413
笑っているけど無知を晒しているだけだよ。
C#はタダで手に入るしIDEもSharpDevelopを使えばこれもタダだ。

417 :_:03/07/05 20:25
http://homepage.mac.com/hiroyuki44/

418 :デフォルトの名無しさん:03/07/05 20:25
へー、C#いいじゃん。
もうDelphiパーソナルなんて型遅れ要らないね!


419 :デフォルトの名無しさん:03/07/05 20:25
DelスレでC#を勧めていることが一番痛い

420 :デフォルトの名無しさん:03/07/05 20:29
>>413から418って全部自作自演じゃねーの?


421 :デフォルトの名無しさん:03/07/05 20:30
>>420
>>420


422 :デフォルトの名無しさん:03/07/05 20:55
RadioButtonをクリックするのはどうやるのですか?

RadioButton1.Click;はできないみたいです。

423 :デフォルトの名無しさん:03/07/05 21:39
>>422
オブジェクトインスペクタ→イベント→OnClick

424 :デフォルトの名無しさん:03/07/05 21:52
>>422
プログラムからってこと?
だとしたら、RadioButton1.Checked := True;

425 :デフォルトの名無しさん:03/07/05 22:19
OnClickに書いてあるコードを実行させたくて、RadioButton1.Clickってやってみたら、エラーになり、
RadioButton1.Checked := Trueでは、チェックは付くけど、OnClickのコードが実行されませんでした。
RadioButton1Clickというプロシージャは人間がクリックしなきゃ実行されないのだろうか。

426 :デフォルトの名無しさん:03/07/05 22:23
>>425
SendMessage。FAQだ。

427 :デフォルトの名無しさん:03/07/05 22:25
>>425
エラーメッセージ書かない奴はバカ

428 :デフォルトの名無しさん:03/07/05 22:25
>>426
えらい回り道だな。

429 :デフォルトの名無しさん:03/07/05 22:29
>>427
すいません。「未知のエラー」と出ました。

430 :デフォルトの名無しさん:03/07/05 22:35
>>427
すいません。「無知のエラー」と出ました。


431 :デフォルトの名無しさん:03/07/05 22:37
>>425
>422の内容で>425の内容を想像するのは困難だろ。最初から具体的に書けよ。
RadioButton1Click(Sender);
でいける。

432 :Delphi 6 Personal:03/07/05 22:38
>>427
[致命的エラー] project1.dpr(1): Delphiの限界が垣間見えました

433 :デフォルトの名無しさん:03/07/05 22:38
>>389
ステレオラインは左右それぞれ音量指定しないとダメだったような記憶がある。
デバイス番号は主デバイス1個のみの決め打ちなら 0 でいい。


434 :無料動画直リン:03/07/05 22:38
http://homepage.mac.com/miku24/

435 :デフォルトの名無しさん:03/07/05 22:45
>>432
プッ、見えたのはオマエの限界だよ。



436 :デフォルトの名無しさん:03/07/05 22:47
>>431
すいません。
まさか出来ないはずは無い、思い焦って書いたら小出しになってしまいました。

>RadioButton1Click(Sender);
ちなみ、今それを書いてみて実行してみたのですがRadioButton1OnClickの内容が実行されなかったです

437 :デフォルトの名無しさん:03/07/05 22:49
>>425

RadioButton1Click(Self);



438 :デフォルトの名無しさん:03/07/05 22:51

D E L P H I の 限 界 の 予 感 !

( A A は ご 想 像 に お 任 せ し ま す )

439 :デフォルトの名無しさん:03/07/05 22:59
TStringList.LoadFromFile でHTMLのソースを読むと
何故か読み込んだソースが文字化けしてしまいます。
メモ帳で開いたように、ソックリそのまま読むにはどうすればいいのでしょうか。

440 :デフォルトの名無しさん:03/07/05 23:00
>メモ帳で開いたように、ソックリそのまま読

んだからこそ文字化けしたんだと思うんだが。

441 :デフォルトの名無しさん:03/07/05 23:00
DELPHI(超初心者)の限界だってば!
それほどそこが浅いわけねーだろ。





それほど深くもねーけど(w


442 :デフォルトの名無しさん:03/07/05 23:03
>>436
いったいどこに書いたんだ?



443 :デフォルトの名無しさん:03/07/05 23:03
面白くない場合は無駄に改行を入れないでください

444 :デフォルトの名無しさん:03/07/05 23:07
>>442
procedure TForm1.FormCreate(Sender: TObject)に書きました。

もう諦めることにします・・・。

445 :374:03/07/05 23:15
>>411
WM_EXITMENULOOP を検索してみたのですが、使い方が分かりません。。。

SendMessage(ハンドル,WM_EXITMENULOOP,wParam,lParam)
の返り値ってことですか?wParamをどうやって調べるのか・・。

446 :デフォルトの名無しさん:03/07/05 23:16
>>444
絶対読める。Senderとか渡さなきゃ。

447 :デフォルトの名無しさん:03/07/05 23:32
>>446
すみません。今、よく確認してみたら、
RadioButton1Click(Sender);で出来ていました・・・(´Д`;)

448 :デフォルトの名無しさん:03/07/05 23:42
ここでよいのかどうかわからないんですが…
Delphi6でバーチャルMIDIキーボードを作ってます。
とりあえずMIDI周りの処理は作り終わって、パソコンのキーボードを
仮想鍵盤にするテストをしてるんですが、
 1.OnKeyDownイベントでMIDI出力開始
 2.OnKeyUpイベントでMIDI出力停止
という仕様です。

キーボードを押している間は一つの音が継続して出るようにしたいのですが、
今はキーボードを押している間中OnKeyDownイベントが何回も発生して、
ピアノを連打しているような状態になってしまいます。

キーボードのキーの数だけKeyDown中のフラグを持たせれば一応解決するとは思うのですが、
何か他にスマートな解決方法はありませんでしょうか。

449 :デフォルトの名無しさん:03/07/05 23:57
>>448
Booleanな配列でも作ってノートON、OFF状態を記憶する。

既に発音中ならそれ以上ノートONは投げない。

音源からある音が発生中か否かがチェックできるならそれを使った方が確実だろうけど。

450 :デフォルトの名無しさん:03/07/06 00:02
たとえば、メニュー画面でステージを選択させて、それが押されると
Now Loadingを表示して、メインFormの作成にとりかかる、作成が終わったら
ゲームをスタートさせる・・・

とやりたいのですが、ステージ選択メニュー.onClickのイベントハンドラ内で

loading表示.visible := true;
Form1 := Tform1.create(Application);

とかやると、Loadingが表示される前にcreateが始まってしまい、createが終わるまで画面が凍ってしまいます。
どうしたらいいんでしょう?(´・ω・`)

451 :デフォルトの名無しさん:03/07/06 00:07
>>450
timer使うしか無いんでは。。

452 :デフォルトの名無しさん:03/07/06 00:08
大麻使うのかヨ!!!!!!!?????

453 : :03/07/06 00:09
>>439
メモ帳で読み込んでも文字化けはしてると思うんだが?
漢字コードがシフトJIS以外なら。

454 :448:03/07/06 00:12
>>449
ありがとうございます。
やっぱりデータ持つしかなさそうですね。

KeyUpが発生するまでKeyDownイベントを発生させないようにできないかなーと
考えてたんですが、冷静に考えるとこの解決策と同じ事のような気がしてきました…

455 : :03/07/06 00:12
>>451
timer?どう使うの?

>>450
loading表示.visible := true;
の「loading表示」って何?それを具体的に説明してくれないと分からん。

456 :デフォルトの名無しさん:03/07/06 00:15
>>455
Timageを事前に作って仕込んでおき、ロード中のみvisibleにしようかな、とか思ってオリマス。

457 :デフォルトの名無しさん:03/07/06 00:16
>>455
良い方法かどうかわかりませんが。。
まずForm1Create許可用のBooleanを作り、falseにしておく。
ステージ選択メニュー.onClickのイベントハンドラ内では
loading表示.visible := true;とForm1Create許可用Boolean=trueのみ行う。
timer内でForm1Create。

458 :デフォルトの名無しさん:03/07/06 00:18
>>454
WM_KEYDOWNで送られてくるmessageを調べれば、オートリピート中か調べられる。例えば

procedure TForm1.WMKeyDown(var message: TWMKeyDown);
begin
 if message.KeyData and $40000000 = 0 then inherited;
end;
ってやれば、オートリピート中はOnKeyDownが発生しなくなる。

459 :デフォルトの名無しさん:03/07/06 00:19
>>457
追記、以後使わないんであればFormCreate内でTimer破棄。

460 :デフォルトの名無しさん:03/07/06 00:21
>>458
ありがとうございます!!
こういう感じのを探してました。m(__)m

461 :デフォルトの名無しさん:03/07/06 00:23
>>451
つーか、「Createが先に行ったように見える」ことが問題なんじゃないの?

「refresh」してみたら?

462 :デフォルトの名無しさん:03/07/06 00:25
>>461
1アクションだとリフレッシュは後処理になったような気が。
処理を分けないとダメだったような。。気がする。

463 :デフォルトの名無しさん:03/07/06 00:26
>>461
かっ、解決しました・・・単に描画の問題だったんですね。
皆様、ありがとうゴザイマシタ!

464 : :03/07/06 00:29
仕切りたいワケじゃないんだが、質問者は
トリップ付けた方がいいと思うんだが…。

465 :デフォルトの名無しさん ◆/gyxcnlOg. :03/07/06 00:47
質問です。トリップの付け方を教えてください

466 :デフォルトの名無しさん:03/07/06 00:50
>>465
かっこいい!
intA := intA;
みたい!

467 :デフォルトの名無しさん:03/07/06 01:05
A:= (A + A - A)*0

468 :デフォルトの名無しさん:03/07/06 01:10
>>465
Googleで検索すれば出てくるよ

469 :デフォルトの名無しさん ◆/gyxcnlOg. :03/07/06 01:27
>>468
http://www.google.com/search?q=%E8%B3%AA%E5%95%8F%E3%81%A7%E3%81%99%E3%80%82Google%E3%81%A3%E3%81%A6%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F&ie=UTF-8&oe=UTF-8&hl=ja&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=

470 :デフォルトの名無しさん:03/07/06 05:36
コンポーネントのコの字もしらないような全くの初心者が
デルファイでオセロゲームを作れるようになるのは何日くらいかかりますか?

471 :デフォルトの名無しさん:03/07/06 08:33
>>470
使うのイメージコントロールくらいだろうから2日。

472 :デフォルトの名無しさん:03/07/06 08:44
>>444

FormCreateイベントには、そのフォームに乗っかってるコントロールの
イベントを呼び出すようなコードは書かない方がいいよ。

フォームは生成されてても、まだ描画か完了してない可能性がある
からね。


473 :デフォルトの名無しさん:03/07/06 09:17
>>472
そのお前が言う「描画」に関する処理がなければ普通に呼び出せるが。

474 : :03/07/06 09:53
最初にメッセージダイアログを表示して、フォームが開く前に
実行させるか選択させたいのですが、「いいえ」を押しても
フォームが表示されてしまい終了できません。

フォームを表示させずに終了させる方法は無いですか?。

procedure FormCreate(Sender: TObject);
var
MesChk : Word;
begin
MesChk := MessageDlg( プログラムを開始しますか?', mtWarning, [mbYes,mbNo], 0);

if MesChk = mrNo then Close; //「いいえ」を選択してもフォームが開いて終了できない。
end;


475 :デフォルトの名無しさん:03/07/06 10:01
Application

476 :デフォルトの名無しさん:03/07/06 10:04
>>474
プロジェクトファイル名.DPR

にコードを書くと良いでしょう。


477 :デフォルトの名無しさん:03/07/06 11:43
delphiでIEの操作パネルのようなものってどのコンポーネントを
組み合わせて使えばよいですか?


478 :デフォルトの名無しさん:03/07/06 11:55
>>477
秘密。

479 :デフォルトの名無しさん:03/07/06 13:22
いままで、Del6の無料版でやってきました。
そろそろ本格的にやりたくなってきたんで、有料版を買おうと思うんですけど、
年末にでるという新リリースを待った方がいですか?
www.borland.co.jp/about/message/openletter_to_delphi_community.html

480 :デフォルトの名無しさん:03/07/06 13:23
>>479
金出すなら別の選択肢も考慮に入れた方が良いと思う。

481 :デフォルトの名無しさん:03/07/06 14:15
>>479
金を出す前に無料のC#もやってみたまえ。ってDelスレで勧めるなよ→俺


482 :デフォルトの名無しさん:03/07/06 14:33
無料のデルファイって
無料のC#より出来ることが少ない?
無料のデルファイはインターネットのブラウザとか作れないっぽいけど
C#なら作れる?

483 :デフォルトの名無しさん:03/07/06 14:40
>>482
コンポーネントが入ってないだけで作れないことはない……はず。
openjaneとか

484 :デフォルトの名無しさん:03/07/06 15:01
>無料のデルファイはインターネットのブラウザとか作れないっぽいけど
アホですか?

485 :デフォルトの名無しさん:03/07/06 15:03
>484
アホです。

486 :デフォルトの名無しさん:03/07/06 15:06
>>485
うむ、がんばれよ。

487 :デフォルトの名無しさん:03/07/06 15:28
>484
ここ超初心者向けの板だからさ、手加減しろよ(藁


488 :デフォルトの名無しさん:03/07/06 15:43
まあおまえら、日曜日位少しはVB厨に夢くらい見させてやれよ。
ほんのわずかな休日なんだし。


489 :デフォルトの名無しさん:03/07/06 16:13
>>473

472は、相手が超初心者だからそう書いたんだと思う。
そのあたりのことがわかってる香具師ならいいんだけど、
イベントの呼び出しがわからないレベルの香具師がハマ
ると混乱するからね。

俺もDel始めた頃にハマった経験があるし(藁


490 :デフォルトの名無しさん:03/07/06 16:13
フォームが作られたら終了するプログラム
procedure TForm1.FormCreate(Sender: TObject);
begin
close;
end;

491 :デフォルトの名無しさん:03/07/06 16:22
スレッド生成というものに挑戦したいと思います。

当然、内部的なプロセスが二つできるので、同じオブジェクトにアクセスする場合は衝突しないように
排他処理とか同期を取らないといけないと思いますが、たとえば

・ フォームからのtext入力をメインスレッドが読み、値を計算して大域変数に代入
・ サブスレッドはループしながら、その変数に変化があったらTForm.image.pictureに描画する

とかいう場合では、メイン→サブの一方通行なので特に衝突しなさそうに見えますが・・・ダメですか?

492 :491:03/07/06 16:48
そうか、別スレッドからはメインのVCLの状態が不明だから、VCLをいじるときは
Synchronizeを使ってメインスレッドから指令を出せばいいのか(´・ω・`)

493 :デフォルトの名無しさん:03/07/06 17:09
>>488
>ほんのわずかな休日なんだし。

VBには仕事があって、Delphiは無職で糞だと言うことか

494 :デフォルトの名無しさん:03/07/06 17:13
Edit1.Textが数字だけのStringなのか、そうではないStringなのかを調べるにはどのようにすればいいですか?

495 :デフォルトの名無しさん:03/07/06 17:41
>>494
http://www.wwlnk.com/boheme/delphi/vbtodel/daf0980.html

496 :デフォルトの名無しさん:03/07/06 18:26
>>495
それ使ってみますどーも!

497 :デフォルトの名無しさん:03/07/06 18:35
>>491
例えばユーザが125と入力したいとする。

大域変数:1
1で処理を開始。

大域変数:12
1の処理が終わる前に入力されると途中から12の処理になる。

大域変数:125
1の処理が終わる前に入力されると途中から12の処理になる。

こうなる。この場合排他制御がないと結果がぼろぼろに。



ただ単に非同期処理をしたいだけならグローバル変数なんぞ使わず
もっと安全な方法があるっしょ。



498 :デフォルトの名無しさん:03/07/06 18:53
10秒間行動を停止するのってどうやるの?
たとえばボタンを押すと10秒後にラベルを変化させたいんだけど

procedure TForm1.Button1Click(Sender: TObject);
begin
//ここで10秒待つ
Label1.Caption:=('10秒たちました');
end;

10秒間何もしない命令を教えて。

499 :デフォルトの名無しさん:03/07/06 18:57
Sleepで

500 :デフォルトの名無しさん:03/07/06 19:00
>>490

それって意図どうりに動かんよね。

ttp://www.borland.co.jp/qanda/delphi/d0000150.html

501 :デフォルトの名無しさん:03/07/06 19:00
>>499
ビジーループになるんだっけか?

502 :Sleep(10000);:03/07/06 19:23
try...finally文とtry...except文の決定的な違いを教えてください
ヘルプ読んだのですが、どこが違うのかよく分かりませんでした

503 :デフォルトの名無しさん:03/07/06 19:24
Sleep関数の害と解決方法
http://www.campus.ne.jp/~ishigami/CREATION/COLUMN/CD1MATI.htm

504 :デフォルトの名無しさん:03/07/06 19:26
>>502
例外があろうが無かろうが実行される。

例外がある場合に実行される。


Delphi唯一の失敗は、同時にその二つが指定できないことだ。

505 :デフォルトの名無しさん:03/07/06 19:39
>>504
どうもです。

506 :デフォルトの名無しさん:03/07/06 20:00
Cでは下のように構造体の定義と配列の宣言、初期化を1度に書けますよね。
static struct{
  int a;
  int b;
}data[]=
{
  12,23,
  34,45,
  56,67
};
Delphiのレコード型でも同じようなことはできないですか?
せめて、配列の宣言と初期化を一度にやりたいのですが。




507 :デフォルトの名無しさん:03/07/06 20:24
>>506
ローカル変数では出来ません。 
もしそういう表現が出来たとしても、隠れた代入文が作られるだけですしね。

その為にwith文があるのですから。 これを使って下さい。


グローバル変数なら(unit内のグローバル変数でも)可能です。

508 :デフォルトの名無しさん:03/07/06 20:40
数千行のインデントを訂正するにはどうすればいい?

509 :デフォルトの名無しさん:03/07/06 21:05
Dedi Code Formatter

510 :デフォルトの名無しさん:03/07/06 21:05
ってスペリングミス。
s/Dedi/Jedi/

511 :デフォルトの名無しさん:03/07/06 21:30
>>497サンありがとうございます。

ゲームプログラムなんですが、いままでonIdleを使って画面描画していたものを、
スレッド仕様に書き換えてみました。
メインスレッドは数値を計算し続け、サブスレッドはそれを元に画面を描画し続けるという感じです。

が、onIdleだと、描画が忙しくなってくる→onIdleが発生しなくなる→描画を間引く→負荷が減る→(゚д゚)ウマー
といった構図で、メインが圧迫されることはなかったのですが、
スレッドにしたら、サブスレッドが全力をあげて描画しようと頑張るもので、描画に負荷がかかると
メインスレッドにあるタイマが遅延してしまい、ガタガタになってしまいました。・゚・(ノД`)・゚・。

while(true) do begin
  start := timegettime;
  Synchronize(゚д゚); // ここでメインスレッド経由でVCLに描画
  stop := timegettime;
  if (stop - start < 33) then sleep(33 - stop - start);
end; // 描画が33ms以下なら、30FPSになるようにwaitを入れる

サブスレッド内はこんな感じなんですが、
これだと、33ms以上になると描画処理だけで全部持って行かれてしまうか・・・。

512 :デフォルトの名無しさん:03/07/06 22:53
>>509-510
Jedi Code Formatらしい。

これ楽だね。サンキウ

513 :デフォルトの名無しさん:03/07/06 23:01
>>511
もうどこから突っ込んで良いのやら・・・

514 :デフォルトの名無しさん:03/07/07 00:11
>>493
>VBには仕事があって、Delphiは無職で糞だと言うことか

それ微妙にちがう…。
VBはバグ取りと称して仕事をせざるを得なく、Delphiはその間に
プロジェクトの構築がすべて終わっている。

515 :デフォルトの名無しさん:03/07/07 00:15
つまりすぐ仕事が終わってしまうDelphiは我々から仕事をなくしてしまう悪のツールだということですね
無職は嫌なのでVBを覚えることにします
ありがとうございました

516 :デフォルトの名無しさん:03/07/07 00:27
Delphiの
名前をつけて保存、とか
開くを選ぶとデフォで最初にでてくるのが
C:\Program Files\Borland\Delphi6\Projects
絶対ここになちゃうんだけど
かえるのどうやるの?

517 :デフォルトの名無しさん:03/07/07 00:49
Delphiの起動アイコンのプロパティで作業フォルダを変える

518 :デフォルトの名無しさん:03/07/07 00:50
>>516
Delのショートカットのプロパティを開いて、
作業フォルダをお好きなフォルダにしませう。

519 :デフォルトの名無しさん:03/07/07 00:56
>>515
それは無理な話だ。Del厨名乗っている香具師でも
殆どの奴はVBも当然のように使えますんで。


520 :デフォルトの名無しさん:03/07/07 00:56
>517-518
Thx!!できました。ありがとう。

521 :デフォルトの名無しさん:03/07/07 09:52
>>515
こいつはひとつのプロジェクトが終わったら次の製品/商品をどんどんつくって
金を稼ぐという考え方がないのか?
永遠に進歩がないやつだな。
VB使ってもメモ帳使ってもいっしょだな。

522 :511:03/07/07 12:03
>>513
やはりツッコミどころ満載ですか・・・(汗

523 :デフォルトの名無しさん:03/07/07 12:20
paradoxのDBについて質問です。
現在C/SのDBアプリを開発しています。

クライアントでテーブルをTQueryでオープンするときに
LANケーブルをわざと抜いて、DBにアクセスできない時の処理を作っているのですが、
その後アプリケーションを終了させようとすると
ウィンドウは消えるのですが、タスクバーに残っていて、
Delphiで強制的に終了させても、「プログラムを終了できません」になります。

これを回避するにはどうすれば良いでしょうか?

OSはWindowsXPです。

宜しくお願いします。

524 :デフォルトの名無しさん:03/07/07 14:26
データベースについて質問です。
例えばBDEを使ったアプリを作ったとして。
これを配布するには、配布先のPCにBDEがインスコされてないとダメなんでしょうか?
BDEが入ってないPCで動作確認しようとしたらエラーが出て動かなかったもので…
また、BDEをインストールしないでよい方法があったら教えていただけないでしょうか?

525 :デフォルトの名無しさん:03/07/07 14:36
BDEをインストールしないでよい方法
http://www.borland.co.jp/kylix/papers/kxguide/kxguid15.html


526 :デフォルトの名無しさん:03/07/07 14:59
MyBaseでSQLは使えないからな〜

527 :デフォルトの名無しさん:03/07/07 15:05
何かDBをインストールせずにって条件?
InterBaseかFirbird にしたら?



528 :デフォルトの名無しさん:03/07/07 17:12
sndPlaySound(Pchar('SOUND.WAV'),SND_ASYNC);
これだと、もう一つ同じ処理をすると、前に鳴っていた音は消えます。

前に鳴っていた音が鳴ったまま重なるように鳴らすにはどうすれば良いですか?

529 :デフォルトの名無しさん:03/07/07 17:29
とにかく例外を客に見せたくないので、
Tryを多用しまくってます(というか、かなりの範囲を一つのTry Exceptでくくってます)が
処理が異様に遅くなってるような気がします。

Tryが多くなると処理が遅くなるのですか?

それとも、Tryは関係ないですか?

530 :524:03/07/07 18:00
>>525
>>526
>>527
ありがとうございます。
そうです。何もDBをインストールせずにってことです。
これから作る前に聞いておいて良かったかも。
BDEだと配布先のPCにもBDEをインストールしないと
だめってことですよね?
MyBaseもInterBaseもFirbirdも使ったことないけど
がんがってみます。

531 :デフォルトの名無しさん:03/07/07 18:44
>>529
関係無いです。

532 :デフォルトの名無しさん:03/07/07 18:55
>>531
レスクス。
そうみたいっすね。

533 :ななしへたぐらま ◆XcB18Bks.Y :03/07/07 20:01
>>339
TMemo.Linesの各行は表示行(画面の見た目の行)であって論理行(改行コードで区切られた行)ではないので注意が必要です.
以下はサンプル.フォームにメモを3個とボタンを2個置き,Memo1とMemo3の幅をかなり広く,Memo2の幅をかなり狭くします.

const
cNewLine = #$0d#$0a; // 改行コード
cSample =
'>>339' + cNewLine +
'TMemo.Linesの各行は表示行(画面の見た目の行)であって論理行(改行コードで区切られた行)ではないので注意が必要です.' + cNewLine +
'Textを使った方が安全かも.';

procedure TForm1.Button1Click(Sender: TObject);
begin
Memo2.Lines.Assign(Memo1.Lines);
Memo3.Lines.Assign(Memo2.Lines);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Memo2.Text := Memo1.Text;
Memo3.Text := Memo2.Text;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Text := cSample;
end;

Button1を押した場合とButton2を押した場合で結果が違う点に注目.Textを使うのが安全確実高速.


534 :デフォルトの名無しさん:03/07/07 23:39
DelでIEの操作パネルみたいなものを作りたいのですが、
どのコンポーネントを組み合わせて作ればよいでしょうか。


535 :デフォルトの名無しさん:03/07/07 23:42
むり

536 :デフォルトの名無しさん:03/07/08 00:09
>>535に補足

>>534じゃ」むり

537 :デフォルトの名無しさん:03/07/08 00:21
>>534
「操作パネル」って何のこと?


538 :デフォルトの名無しさん:03/07/08 00:21
>>534
ここで探せ。きっとある。
Delphi Super Page
ttp://delphi.icm.edu.pl/

539 : :03/07/08 00:48
俺も分からんなぁ<操作パネル
Coolbar?

540 :デフォルトの名無しさん:03/07/08 01:12
DelでIEを操作するパネルを作りたいとも取れるぞ

541 : :03/07/08 01:18
釣りだったらそこそこ釣れたな(藁

542 :デフォルトの名無しさん:03/07/08 02:20
TStringListで空の行だけなくす方法はありませんか
例えば

[0]
[1] DEF
[2]
[3] ABC

とあった場合

[0] DEF
[1] ABC

としたいのです。

543 :デフォルトの名無しさん:03/07/08 02:28
>>542

with TStringList do
 for I := Count -1 downto 0 do
 begin
  if Strings[I] = '' then
   Delete(I);
 end;


544 :デフォルトの名無しさん:03/07/08 02:33
thenが無ければきれいなのに・・・。


545 :542:03/07/08 02:55
>>543
その通りやったら出来ました。サンクス!

546 :デフォルトの名無しさん:03/07/08 06:20
文字エンコードが EUC-JP のものを Shift-JIS にしたいんだけど、どうやればいいの?

547 :デフォルトの名無しさん:03/07/08 06:26
>>546
変換テーブル書く。

548 :デフォルトの名無しさん:03/07/08 10:18
>>546
$80マイナスしてから_mbcjistojmsでJIS→SJIS変換

549 :デフォルトの名無しさん:03/07/08 11:07
>>546
コードページ 54932 で Unicode に変換してから AnsiString にキャスト。

550 :デフォルトの名無しさん:03/07/08 13:54
sndPlaySound(Pchar('SOUND.WAV'),SND_ASYNC);
これだと、もう一つ同じ処理をすると、前に鳴っていた音は消えます。

前に鳴っていた音が鳴ったまま重なるように鳴らすにはどうすれば良いですか?


551 :デフォルトの名無しさん:03/07/08 15:56
Delphi3.01でQuickReport2.0k使ってParadoxテーブルの中身を印刷する
ように作ってみたんですが、うまくできません。

作成した物をInstallShieldExpressでインストールした一部の
WinXP HOME機で実行してプレビューを見ようとすると、
「アドレスの00000001で00000001に対する読み込み違反が起きました」
というエラーメッセージが出て、さらにプレビューの次ページを見ようと
ボタンをクリックすると、「メタファイルが不正です」というメッセージが出ます。

自分の開発用PC(WinXP Pro)や他のWinXPでは、このようなエラーは
起きないので、どうしてなのか分からず困っています。
どなたか助言ください。
「いまどき3.01かよ」ってのはナシの方向で。

552 :デフォルトの名無しさん:03/07/08 15:57
>>551
×自分の開発用PC(WinXP Pro)や他のWinXPでは
○自分の開発用PC(WinXP Pro)や他のWinXP HOMEでは

ちなみに互換モードで試してみたんですが、駄目でした。

553 :デフォルトの名無しさん:03/07/08 16:25
ボタンがたくさん(80個ぐらい)ある
フォームに切り替わる時に、画面がチラチラします。
(パっと出てこない)

この辺を綺麗にするためのテクニックなどありましたら
ご教授下さいまし。


554 :デフォルトの名無しさん:03/07/08 17:01
>>553
1. 方法その1
LockWindowUpdateを使用する。
Form1からForm2(ボタンがたくさんあるフォーム)を呼び出す。
procedure TForm1.Button1Click(Sender: TObject)
begin
 Screen.Cursor := crHourGlass;
 LockWindowUpdate(Handle);
 try
  Form2.Show;
 finally
  LockWindowUpdate(0);
  Screen.Cursor := crDefault;
 end;

2. ボタンが同じ大きさで格子状に配列されてもよい場合
こういうコントロールを使用して、たくさんのボタンを1個にしてしまう。
http://www.woll2woll.com/1stclass/tour/buttongroups.html
(英語)

LockWindowUpdateはWin32ヘルプか、MSDNを参照のこと。

555 :デフォルトの名無しさん:03/07/08 17:06
>>550
sndPlaySound(Pchar('SOUND.WAV'),SND_ASYNC);

sndPlaySound(Pchar('SOUND.WAV'), SND_MEMORY + SND_ASYNC);
にすると、どうなる?

556 :553:03/07/08 17:19
>>554
レス、ありがとうございます。
LockWindowUpdateを使ってみたのですが、
まだ画面にパッと出てこずに、ちらつきます。
PCの処理が追いついていないのだと思います。

方法2にトライしてみます。

557 :550:03/07/08 17:22
>>555
レスありがとうございます。
音が鳴らなくなりました。

558 :553:03/07/08 17:26
>>554
LockWindowUpdate(Handle);
の部分を
LockWindowUpdate(Form2.Handle);
にしたら、かなり改善しました。

559 :デフォルトの名無しさん:03/07/08 17:27
>>553
そもそもひとつの画面にボタンが80個あるインターフェースを作り上げることが
間違いだと言ってみるテスト。
ちらつきの問題が解決されても、それだけでリソース食っちまうし、
機能別に別フォームにするか、せめてタブコントロールで分けるという
ようにしたほうがよくないか?
それとも電卓とか、レジスタみたいなものを作ろうとしているならば、
ボタンを集合させたVCLがどっかにあるはずだから、探してそれ使ったほうがいい
と思ふよ(>>554がそれなのか?)

560 :553:03/07/08 17:39
>>559
親身なレスありがとうございます。
ソフトウエアキーボードを作っているので、どうしても
ボタン数が多くなってしまいます。

作っていて「こんなにボタンを作ってもいいのかなぁ」と思っていました。

ボタンを集合させたコントロールを使うのが、この場合
理にかなってるんですね。

>>554を含めて、色々検討してみます。

561 : :03/07/08 17:53
DisableAlign
ってなんですか?

ぐぐってもほとんど分かりませんでした。

562 :デフォルトの名無しさん:03/07/08 18:21
Form2.DoubleBuffered = True;で、その程度のチラチラ防げるんちゃうの?

563 :デフォルトの名無しさん:03/07/08 18:59
Panelの上にImageを置いたコンポを作成する時、
Imageの元々のイベントをコンポのイベントとするためには
どう記述すればいいんでしょうか?

564 :デフォルトの名無しさん:03/07/08 21:20
>>563
お前だけだぞ。コンポコンポ言ってるの。バカみたいだ。

565 :デフォルトの名無しさん:03/07/08 22:01
implementationの上のusesと下のusesは何の違いがあるのでしょうか?

566 :デフォルトの名無しさん:03/07/08 22:02
C#Builder導入支援キャンペーン
http://store.borland.co.jp/upgrade/csharpbuilder_cmp.html

567 :デフォルトの名無しさん:03/07/08 22:03
>>565
循環参照OKか否か。

568 :デフォルトの名無しさん:03/07/08 22:21
>>565
他のユニットに公開するInterfaces節の記述に必要か否か。
Classes.pasで定義されたTListを例に取る。

interface
uses Class;
function Hoge: TList;
implimentation
function Hoge: TList;
begin
 result := nil;
end;
↑interface節でuses Classesが必要。

interface
function Hoge: Integer;
implimentation
uses Classes;
function Hoge: Integer;
var
l:TList;
begin
 result := 1;
end;
↑implimentationでuses Classesが必要。

569 :デフォルトの名無しさん:03/07/08 22:38
マシン交換でD5Pro+BDE(PARADOX)で作成したデータベースアプリを2台のマシンにインストールしたところ
片方だけruntime error 217と出て起動できません。
OSはXpProsp1です。
マシンの違いは起動できない方がPentium4 2.4Ghz、RAM1GB、動く方がceleron1.8Ghz、RAM512MBです。
両方とも新規で買ったDELL製で同じようにインストールしたのつもりなのですが。
アプリ自体は3年前から使用していてWIN95〜XpHomeまですべてのバージョンで問題なく動いてました。
ちょっと原因の見当がつかないのでこのエラーがどんなときに発生するのかご存じでしたら教えてください。




570 :デフォルトの名無しさん:03/07/08 22:46
>>569
ほう、LinuxやBSDはOSではないと、いい根性だな。

571 :デフォルトの名無しさん:03/07/08 23:11
>>570
は?
どこにそんなことが書いてありますか?

572 :デフォルトの名無しさん:03/07/08 23:25
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1

OS means Windows。

573 :デフォルトの名無しさん:03/07/08 23:29
問題のマシンのOSがXpProsp1だと説明することがなぜLinuxやBSDの否定につながるのか
論理的に説明してもらえませんか?
馬鹿みたいなコピペしかできないのなら氏ねよ。


574 :デフォルトの名無しさん:03/07/08 23:29
ナニコイツ

575 :デフォルトの名無しさん:03/07/08 23:30
574は570=572にね

576 :デフォルトの名無しさん:03/07/09 02:23
delphiでCでかかれたソースを使う方法ってありますでしょうか…
ちょっと必要になったので

577 :デフォルトの名無しさん:03/07/09 02:39
>>576
無いね。
C++ BuilderはPascalソース使えるんだけどな。
他のコンパイラでDLLにでもしなさい。

578 :デフォルトの名無しさん:03/07/09 04:29
ある変数が変更されたら、なにか処理をさせたい、なんて方法はありますか?
コールバックっつうの?
そんなイメージ。

579 :デフォルトの名無しさん:03/07/09 05:27
プロパティ

580 :デフォルトの名無しさん:03/07/09 05:39
あっ、そっか。
クラスにしろってことか。
ありがとう。

581 :デフォルトの名無しさん:03/07/09 06:48
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1
OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1OSはXpProsp1

OS means Windows。

582 :デフォルトの名無しさん:03/07/09 07:27
P2PMMORPG「P2PREGARO」
http://game3.2ch.net/test/read.cgi/mmominor/1054592980/l50

技術士キボンヌ歓迎します。

583 :デフォルトの名無しさん:03/07/09 07:30
人生金次第

584 :デフォルトの名無しさん:03/07/09 09:25
>>576
いったんBCCなどで.objにコンパイルして、それをDelphiとリンクさせることはできたと思う。
http://www.borland.co.jp/qanda/lang/l0002163.html


585 :デフォルトの名無しさん:03/07/09 09:39
>>549
横からですが…ホント!?
なら他のEUC-XXのコードページもあります??

586 :デフォルトの名無しさん:03/07/09 10:01
>>585
疑う前に MSDN ドキュメントチェック。
一通り、IE/Outlook が処理できるコードページは使えるようになっている。
ただし IE をインストールする必要があるが、とんでもなく古い Win95 で無ければ
大丈夫でしょ。

JIS / ISO2022 もサポートされているよ

587 :デフォルトの名無しさん:03/07/09 10:03
簡体字 EUC - 51936
GB18030 - 54936
簡体字 ISO-2022 - 50227
韓国語 EUC - 51949



588 : :03/07/09 10:55
>>554
1stClass3000proってのをダウンロードしたら良いのですか?

589 :デフォルトの名無しさん:03/07/09 11:05
☆頑張ってまーす!!☆女の子が作ったサイトです☆
       ☆見て見て!!
http://yahooo.s2.x-beat.com/linkvp2/linkvp2.html


590 :デフォルトの名無しさん:03/07/09 11:11
>>586
DelphiユーザにMSDNみろと言うのも酷な話だと思われ。
Web版は重いし激しく使いにくいし。

591 :デフォルトの名無しさん:03/07/09 11:16
>>590
ま、人それぞれ。

592 :デフォルトの名無しさん:03/07/09 11:32
>>588
そうです。その中の TfcButtonGroupというのを使ってみる。

593 :デフォルトの名無しさん:03/07/09 11:36
>>569
ペン4 2.4Gか、ケロリン1.8Gかはあまり関係ないだろうな。
多分BDEのエリアスがちゃんと設定されていないからじゃないの?
もいちど、エリアスをチェックしる

594 : :03/07/09 11:46
>>592
有料っぽいね。

595 :デフォルトの名無しさん:03/07/09 12:18
実践・Delphiでポインタ入門の
実践その2 <TList.Items>
http://hp.vector.co.jp/authors/VA009712/take/delphi/pointer.htm#tlist

この内容で疑問に思ったんですが、
FList.Clear; した時に、FListに登録されているTMyItemはちゃんと
Destroyされるものなんでしょうか?

596 :デフォルトの名無しさん:03/07/09 13:02
>>595
Destroyされません
その例はデストラクタでちゃんと掃除をしてないので
メモリリークを起こすと思います

597 :デフォルトの名無しさん:03/07/09 13:15
>596
やっぱりそうですよね…

ところで、DeleteやDestroyに各TMyItemをFreeするように書いて、
Listの先頭のMyItemを別に宣言したMyItemに代入した後に、ListをClearして、
MyItemのプロパティを参照してもエラーにならなかったんですが、
これは同じオブジェクトを見てなくて、代入時にAssignされたのかな?

598 :デフォルトの名無しさん:03/07/09 13:43
>>597
たまたまエラーにならなかっただけだと思う。
自動でAssignされるようなことはないし、そもそもMyItemはTPersistent
を継承していないのでAssignメソッドを持っていない。


599 : :03/07/09 13:55
image1.Picture.Bitmap.Canvas.CopyRect(rect(0,0,100,100),image2.Canvas ,rect(0,0,image2.Width,image2.Height));
ってやると、画像のエッジがガタガタになります。
エッジが滑らかなまま拡大縮小するにはどうすれば良いでしょうか?

600 :_:03/07/09 13:57
http://homepage.mac.com/hiroyuki44/

601 :デフォルトの名無しさん:03/07/09 16:42
>>586
サンクス。しかし、54932をMultiByteToWideCharに渡しても玉砕しました。一応Win2000。

602 :デフォルトの名無しさん:03/07/09 16:53
>>581
Winを抜いただけでなぜそうなるのか教えてくれない?

603 :デフォルトの名無しさん:03/07/09 17:20
JavaのLog4jみたいなクラスありませんか?

604 :デフォルトの名無しさん:03/07/09 17:43
>>593
ありがとうございます。
そのへんは何度も何度も設定し直したのですがだめでして、
諦めて後回しにしていたネットワークプリンタドライバーをインストールしたら
なぜか起動するようになりました。
なぜだろう…
プリンタ回りはTPrinterSetupDialogを置いてるだけでアプリからはいじってないんだけどな。



605 :デフォルトの名無しさん:03/07/09 18:16
Edit1内のキャレットを一番右に寄せる方法を教えてください。

606 :デフォルトの名無しさん:03/07/09 18:17
Canvasに変更があったかを知るにはどうすればいいですか?

607 :デフォルトの名無しさん:03/07/09 18:34
↑いい忘れましたがImageのCanvasです。

608 :デフォルトの名無しさん:03/07/09 18:39
>>605
http://www.borland.co.jp/qanda/delphi/d0000090.html
http://www2.big.or.jp/~osamu/Delphi/tips.cgi?index=0204.txt

609 :デフォルトの名無しさん:03/07/09 18:42
Turbo Pascal をこのまま続けてもいいのでしょうか?!
Delphiは高すぎるよな。UMLみたいな仕事ができるのなら
いいのだが。

610 :デフォルトの名無しさん:03/07/09 19:14
>>609
DOSは…分野によっては充分現役なので…つか、制御系とかだと変にWinに置き換え不可では…
Delphiは…まあ、UMLならEnt版で可能だけど…高すぎるよな。同意。

611 :デフォルトの名無しさん:03/07/09 19:54
君たち貧乏ですね

612 :デフォルトの名無しさん:03/07/09 20:36
質問です…
>>448で質問して>>458の回答を頂いたのですが、
WM_KEYDOWNのパラメータを取得する方法がわかりません。
今はprocedure宣言時に以下のようにしてます。

procedure WMKeyDown(var message: TWMKeyDown); message WM_KEYDOWN;

ヘルプでmessage(指令)を調べると、こう書けばWM_KEYDOWNメッセージ取得時に勝手に動いてくれる…
ように見えるのですが、動いていないようです。
コードの所にブレイクポイントを設定しても、来ていませんでした。

どう質問すればよいのかもよくわかっていないのですが…(汗
やりたいことは「キーリピートを抑制するために、WM_KEYDOWNのデータ取得時のパラメータを知りたい」?です。

613 :デフォルトの名無しさん:03/07/09 21:26
>>561
オンラインヘルプを使うといいよ

Delphiのエディタ上にDisableAlignをこぴぺして
その上にカーソルを合わせてF1を押す

614 :デフォルトの名無しさん:03/07/09 21:32
>>612
ボタン等にフォーカスがあったら、そっちにWM_KEYDOWNが送られて
フォームには送られてこないけど、そういう状態なんでない?

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
begin
 if (Msg.message = WM_KEYDOWN) and (Msg.lParam and $40000000 <> 0) then Handled := True;
end;

↑みたいにApplicationEventsのOnMessageで、アプリ全体のキーリピートを抑制すればいいと思う。
適当に条件足せば、MIDIキーボードのフォームがアクティブのときだけ抑制する、とかできるだろうし。

615 :デフォルトの名無しさん:03/07/09 22:00
動的に複数のTLabelを作ります。
そのラベルが必要無くなったら一度に全てのラベルを削除したいのですが、
どうにもやりかたがわかりません。
Nameプロパティを与えて Name.Free; とやってみたのですが
「実パラメータが足りません」とエラーが出て駄目でした。
どなたか良い方法をご存知無いでしょうか。

616 :デフォルトの名無しさん:03/07/09 22:10
>>615
TLabelのParentが決まっているだろうから
ParentコンポーネントのControlsプロパティを使って削除する
例えばこんな感じ(ParentがaPanelだとして)
for i:=0 to aPanel.ControlCount-1 do
if aPanel.Controls[i] is TLabel then
aPanel.Controls[i].Free;

617 :デフォルトの名無しさん:03/07/09 22:12
aPanelに他のラベルも載っているようなら
TLabelから派生した専用のクラスを作って判定すればOk

618 :デフォルトの名無しさん:03/07/09 22:16
現在表示されているMDIフォーム数を取得するにはどうすればいいですか?

619 :デフォルトの名無しさん:03/07/09 22:19
フォームを作るたびにグローバル変数を+1していく。
フォームが消えるときに-1するのをお忘れなく。

620 :デフォルトの名無しさん:03/07/09 22:20
>>616
for i:=aPanel..ControlCount-1 Downto 0 do
ってしたらできました! ありがとう!!!1!

>>617
派生とかって良くわかんないので勉強してみますね!
レスありがとう!

621 :デフォルトの名無しさん:03/07/09 22:34
>>614
アプリケーションレベルでやったらキーリピートを抑制できました。
有り難うございます!

>ボタン等にフォーカスがあったら、そっちにWM_KEYDOWNが送られて
>フォームには送られてこないけど、そういう状態なんでない?

Form1の「KeyPreview」プロパティをtrueにしてあるんですが、
これではこないと言うことでしょうか。。
とりあえず動いて気持ち的に余裕が出来たのでw、もう一度調べ直してみます。

622 :デフォルトの名無しさん:03/07/09 22:59
> これではこないと言うことでしょうか。。
そう。KeyPreviweをTrueにしてもフォームにWM_KEYDOWNが送られてくることはない。

623 :デフォルトの名無しさん:03/07/10 00:12
>>622
すみません、ありがとうございます。
メッセージを受け取る順番?みたいな物を把握しないとだめっぽいですね。

教えていただいた方々、ありがとうございました。

624 :デフォルトの名無しさん:03/07/10 10:34
Delphi で使える、Javadoc のような、doxygen のような、ドキュメント生成ツールって
ありますか?

625 :デフォルトの名無しさん:03/07/10 11:09
>>624
http://leed.issp.u-tokyo.ac.jp/~takeuchi/delphi/article/059/059098.html
http://pas2dox.sourceforge.net/


626 :デフォルトの名無しさん:03/07/10 11:23
Tfilestream.WriteBuffer('A', Length('A'))
で出力するとファイルにAが出力されるのですが、
AAA: String;
AAA := 'A';
Tfilestream.WriteBuffer(AAA, Length(AAA))
とすると・になってしまいます。

なぜなんでしょうか?引数の const と言うのが原因でしょうか?

627 :デフォルトの名無しさん:03/07/10 12:14
WriteBuffer(Pointer(AAA)^, Length(AAA));

628 :デフォルトの名無しさん:03/07/10 13:10
神降臨!


629 :デフォルトの名無しさん:03/07/10 13:16
神様には敬語使え

630 :デフォルトの名無しさん:03/07/10 14:38
Delphi/Kylixに両方使えて、UNICODEファイルを書くコンポーネント無いですか?
低機能で宵で津。

631 :デフォルトの名無しさん:03/07/10 14:39
ゲームの改造をしたいのですが、
他のアプリのメモリの値を取得する方法を教えてください。

632 :デフォルトの名無しさん:03/07/10 15:21
>>631
ゲームの改造なら、バイナリエディタ使えばいいんでない

633 :デフォルトの名無しさん:03/07/10 15:31
>>632
レス、ありがとうございます。
それは、まあそうなんですけど、
バイナリエディタやプロセスメモリエディタだと
毎回同じ処理をするのが面倒だったり、その上アドレスや数値を間違うと
えらい目にあうし。
パソコンにあまり詳しくない友人なんかには説明しづらいし。
ゲームごとに、Delphiでexeにするとその辺が解決できるかなと。

まあ、Delphiを使えるようになりたいという下心のほうが大きいわけですが。


634 :デフォルトの名無しさん:03/07/10 16:15
モードレスフォームみたいに他のフォームを操作できて、なおかつ
モーダルフォームみたいに常に前面に表示するにはどうすればいいですか?

635 :デフォルトの名無しさん:03/07/10 16:56
if (i >= 2) and (i <= 6) then // iが2以上6以下の場合

これは、こういう風に書くしかありませんか?

636 :デフォルトの名無しさん:03/07/10 17:09
>>635
if i in [2..6] then
詳しくはヘルプの集合型演算子を参照のこと。

637 :デフォルトの名無しさん:03/07/10 17:32
ヘルプ確認しました。ありがとうございました。

638 :デフォルトの名無しさん:03/07/10 18:58
>>529
>{$WARNINGS OFF}
>これは警告メッセージの生成を無効にするコンパイラ指令です。
ヘルプに載ってたんですが、これ使えそう?

639 :デフォルトの名無しさん:03/07/10 19:22
今でもdelphi6の新品を買えますか?

640 :デフォルトの名無しさん:03/07/10 19:42
>>639
http://www.vector.co.jp/soft/win95/prog/se205882.html

641 :デフォルトの名無しさん:03/07/10 20:51
http://www.winmx.com/

642 :デフォルトの名無しさん:03/07/10 21:06
http://www.geocities.co.jp/SiliconValley/2949/

643 :デフォルトの名無しさん:03/07/10 23:09
文字コード変換はjconvert.pasが便利。
ググればでてくる。

644 :デフォルトの名無しさん:03/07/10 23:33
次期Delphiって.NET対応だけのプログラムしか作れない? 作れる?

645 :デフォルトの名無しさん:03/07/10 23:33
今インストール終わったのですが
がんばればゲーム作れるでしょうか。

646 :デフォルトの名無しさん:03/07/10 23:40
簡単なゲームならすぐにできる
高度なゲームならかなり大変
人間より強い囲碁対局ソフトだと一生掛かっても無理かもしれない

647 :デフォルトの名無しさん:03/07/10 23:41
Delphi&ゲームな本が出てるからそれ買っとけ

648 :デフォルトの名無しさん:03/07/10 23:42
>>647
あくまで理論で実践には役に立たんよ。<遊びのレシピ

649 :デフォルトの名無しさん:03/07/10 23:54
どなたか立方体のワイヤーフレームを
Delphiで描くプログラムソースを教えてください。
本読んでも全然わかりません・・・。

650 :デフォルトの名無しさん:03/07/10 23:55
>>649
技術家庭科の本に立体の書き方とか載ってなかったか?角度は30°で長さは1/2とか言う奴。

651 :デフォルトの名無しさん:03/07/11 00:07
線分とか座標の定義をしてそのあと2次元に見えるように
変換する・・・ってやつなんですが、C言語?みたいです。
どこかのサイトにDelphiで組まれたプログラムのってないでしょうか?


652 :デフォルトの名無しさん:03/07/11 00:08
>>645
ゲーム作るのって難しいよ。
動かすだけでも物凄く大変なのに、人間を楽しませなきゃいけない。

653 :デフォルトの名無しさん:03/07/11 00:18
>>649
Lightwave等の3DCGソフトを解析してワイヤーフレームを描く部分をパクる
大変そうだけど頑張ってね

654 :デフォルトの名無しさん:03/07/11 00:23
>>651
DelphiX
ttp://www.yks.ne.jp/~hori/DelphiX.html

655 :デフォルトの名無しさん:03/07/11 00:32
>>645
【Delphi】 ゲームつくるぞ(゚Д゚)ゴルァ 【作れば?】
http://bbs.gamdev.org/test/read.cgi?bbs=gamedev&key=1054282821
いってよし!

656 :デフォルトの名無しさん:03/07/11 00:32
Buttonが存在するForm全体にImageを表示させると、
ButtonがImageより上にあって、Buttonの部分の絵が隠れてしまいました。
Form上に存在するあらゆるコントロールより、このImageが上に表示されるようにするにはどのようにすればいいのでしょうか?

657 :656:03/07/11 00:48
やっぱ忘れてください

658 :デフォルトの名無しさん:03/07/11 06:22
解決したのかそうでないのかぐらい、いってけよ・・・

659 :デフォルトの名無しさん:03/07/11 08:26
そう言えばフォームの上を覆うメッシュ上のシャッターを置こうとした覚えがあるな


660 :デフォルトの名無しさん:03/07/11 08:48
MyCanvas:=TCanvas.Create;
MyCanvas.Handle :=GetDC(0) で作ったMyCanvas上に描けば 自分のフォームだろうが、他人のフォームだろうが自由に描ける



661 :デフォルトの名無しさん:03/07/11 09:07
PageControlの上に置いたツリーヴューをアクティヴにしたいんだけど、どうすればよかですか。
作ったままだとPageControlのタブにフォーカスがあって、キーボードで操作できない・・・・。

662 :デフォルトの名無しさん:03/07/11 10:41
pagecontrolのonenterでactivepageにsetfocusして、
各sheet.のonenterでデフォルトのコントロールに
setfocusするのはどうだろう。

663 :デフォルトの名無しさん:03/07/11 11:22
TThreadで優先度を設定する方法はわかるのですが、
メインスレッドの優先度を変更する方法がわかりません。
よ?

664 :デフォルトの名無しさん:03/07/11 13:10
キー入力に関する質問です。

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
begin
if (Msg.message = WM_KEYDOWN) then form1.Caption := chr(Msg.wParam);
end;

これを実行するとForm1のCaptionに押したキーが表示されますが、
CapsLockを押していないにもかかわらずアルファベットは全て大文字になり、
「,」や「.」は半角カナになってしまいます。
なにか特別なことをしないとだめなのでしょうか。

665 :デフォルトの名無しさん:03/07/11 13:32
ADS形式とPAC形式とIMG形式はどうやって解凍するんですか?


666 :デフォルトの名無しさん:03/07/11 14:01
>>ADS形式とPAC形式とIMG形式はどうやって解凍するんですか
ADS形式とPAC形式とIMG形式を解凍するモジュールを使います。



667 :デフォルトの名無しさん:03/07/11 14:04
>>663
メインスレッドもスレッドのひとつ。
GetCurrentThread で「現在」のスレッドハンドルが取れるよ。
「現在のスレッド」のハンドルなので、呼び出すコンテキストを間違えないように。

668 :デフォルトの名無しさん:03/07/11 14:08
>>664
あいにく、WM_KEYDOWN はそういうものだから。あなたが見ているのはスキャンコード。
物理的なキーの番号とそれが生成する文字コードは本来別のものだから。

WM_CHAR を使うことを考えましょう。
それと、WM_CHAR と WM_KEYDOWN の違いを調べましょう。


669 :デフォルトの名無しさん:03/07/11 15:41
できました!
よ?

670 :デフォルトの名無しさん:03/07/11 16:18
MDIアプリケーションで
子フォームA_WinにImageを貼り付けて
unit A_Win;
type
TMDI_A = class(TForm)
・・・
Image1: TImage;
・・・
end;
var
A: TMDI_A;
親フォームMainFormから子フォームA_Winを開いたときに
Imageの内容をクリアしようとしています。
このクリア部分を別のUnitで行なおうとするとき
unit Graph;
procedure Clr_Image(WakuColor,NaibuColor ・・・);
with A.Image1.Canvas do // (←)
begin
//Pen を使って長方形を描画して、その図形を Brush で塗りつぶす
Pen.Color := WakuColor; // 枠色
Pen.Style := psSolid;
Brush.Color := NaibuColor; // 内部色
CopyMode := cmWhiteness;
Brush.Style := bsSolid;
// Image画面のクリア
Rectangle(0,0, Width, Height);
end;
矢印部分(←)で、EAccessViolation クラス例外となってしまいます。
ActiveMDIChildプロパティを使うのかもしれませんが、わかりません。
教えて下さい。

671 :デフォルトの名無しさん:03/07/11 17:10
たぶんImage1はまだ生成されていない。
たとえばフォームのOldCreateOrderプロパティのからみとかで。

672 :デフォルトの名無しさん:03/07/11 17:25
Delphiのバグを発見しました。

プロジェクトファイルの一番頭にあるprogramの次に先頭が数字の文字列が入っているとエラーが出ます。
たとえば10000yenのように数値とアルファベットがくっ付いていても数値と見なされエラーになります。

673 :639:03/07/11 18:37
>>640
PersonalでなくProfessionalが欲しいのですが…。

>>641, 642
買える所だっちゅーの。


674 :デフォルトの名無しさん:03/07/11 18:38
今ならボーランドにメールすれば間違いなく買える

675 :デフォルトの名無しさん:03/07/11 18:47
>>668
ありがとうございます。
キーボードの種類(日本語キーボード)とか、
まっったく見当違いなことを調べてました。。

676 :デフォルトの名無しさん:03/07/11 18:49
>>672
仕様なんですが。

677 :デフォルトの名無しさん:03/07/11 19:07
Delphiの限界は一行目にあるらしいですね

678 :デフォルトの名無しさん:03/07/11 19:57
Delphi6 へコンポーネントのインストールでつまずいてます

インストールしようとしているコンポーネントはこれです

Indy - Download Indy 9.0
http://www.nevrona.com/Indy/download/Indy9.html

・.zip を展開し、展開したファイルを全て $(DELPHI)\Source\Indy にコピー
・そこで、fulld6.bat を実行
・$(DELPHI)\Source\D6 ディレクトリが作られ、そこに *.dcu と dclindy*.bpl ができる
・dclindy*.bpl を $(DELPHI)\Bin\ にコピー

この様な手順で、インストールしましたが、

----------------------------------------------------------
delphi32.exe - エントリ ポイントが見つかりません

プロシージャ エントリ ポイント @Idresourcestrings@_RSBindingAny が
ダイナミック リンク ライブラリ Indy60.bpl から見つかりませんでした。
----------------------------------------------------------

こんなエラーメッセージが出てしまいます。標準で入っている Indy が古い(確か v8 ぐらい)
ので、新しいのをインストールしようと思いましたが、うまくいきませんでした。

どなたかご教示願いますヽ(´Д`;)ノ

679 :デフォルトの名無しさん:03/07/11 20:31
Indyはインストーラ付きのやつでインストールすればOK押してるだけで馬鹿でもインストールできるぞ

680 :デフォルトの名無しさん:03/07/11 20:36
今まで、簡単にWindowsAPIで書けるものはAPを優先して書いてきましたが、
ですが、最近.NETというものを知り、これで大丈夫なのかと思うようになりました。
APIを優先して使った方が良いのか、Delphi言語(?)を優先して使った方が良いのか教えてください。。

681 :デフォルトの名無しさん:03/07/11 20:44
>>679
漏れの環境だとインストーラ使ってもインスト出来てないよ・゜・(ノД`)・゜・
まぁ、手動でインスト試したときのエラーが678と違うから678はインストできると思うが

682 :678:03/07/11 21:01
>>679
インストラー付きって何処にあるんですか?

683 :678:03/07/11 21:10
>>682

×インストラー
○インストーラー

でした…。うぅ…

684 :デフォルトの名無しさん:03/07/11 21:13
>>662
d。

685 :デフォルトの名無しさん:03/07/11 21:28
delphi8買う為にお金溜めるか・・・

686 :デフォルトの名無しさん:03/07/11 21:50
How do I install Indy into Borland Delphi?

・ Close the Borland Delphi IDE if it is open.
・ If you are using the version of Indy included in Delphi 6 or 7, use the MSI installer to remove Indy.
・ Remove all Indy files including dclIndy*.bpl, Indy*.bpl, the Id*.pas, and the Id*.dcu's.
 Take care that you only remove the old Indy files and not something else.
 Be sure that you also remove any Indy*.bpl from your Windows\System directory.

・ Place the new version of Indy in a directory of your choice. When unzipping,
 please keep the \source directory for the archive intact because that is used by some build batch files.

・ In the source directory, there are several batch files. Run the appropriate one for your version of Indy:

・ FULLD4.BAT - Delphi 4
・ FULLD5.BAT - Delphi 5
・ FULLD6.BAT - Delphi 6
・ FULLD7.BAT - Delphi 7

・ These batch files create subdirectories in the main Indy directory folder.
 They are (D4 for Delphi 4, D5 for Delphi 5, D6 for Delphi 6, and D7 for Delphi 7). These directories contain:

・ The Indy .DCU's
・ The Indy Design-Time .BPL

・ In your Delphi IDE, add the Indy design-time package with Component|Install Package...|Add...
 Go to the subdirectory where the Indy .DCU's and Design-Time .BPL was placed by the batch file.
 Add the Design-Time .BPL that is listed. It usually is named dclIndy followed by the Borland Delphi version and an 0.

・ Add the path where the .DCU's are located to your environment.
 Do this with Tools|Environment Options...|Library...|Library Path...

687 :678:03/07/11 22:03
えぇっと、一応インストールうまくいったっぽいです…

公式サイトによると、Delphi 6 & 7 はインストールに注意が必要とのこと。
俺がやった手順は以下の通り

Delphi をインストールした時に入れた Indy を削除しなければなりません

1. $(DELPHI)\Borland Delphi 6.msi を実行して、「変更」で次を選択
2. プログラムファイルの所の「Indy」を選択して「インストールしない」を選択
3. 次へ進んで、メッセージ通りにインストーラーを進める

これでインストールされている Indy の削除終了

4 .zip を展開し、展開したファイルを全て $(DELPHI)\Source\Indy にコピー
5. そこで、fulld6.bat を実行(delphi7 の時は fulld7.bat)
6. $(DELPHI)\Source\D6 ディレクトリが作られるので、そこに *.dcu と dclindy*.bpl ができる
7. dclindy*.bpl を $(DELPHI)\Bin\ にコピー
8. 6 のディレクトリにある *.dcu *.dcp ファイルを $(DELPHI)\Lib\ にコピー
9. Delphi を立ち上げる
10. メニューの[コンポーネント>パッケージ]を選択
11. [設計時パッケージ]の所から[Internet Direct (Indy) for D6 ...]にチェックを入れる
12. [デフォルト]にチェックを入れる
13. [OK]を選択

これで一応、インストール終了しました。しかし、問題は Debug 用の
ライブラリが無いって事です。

688 :デフォルトの名無しさん:03/07/12 00:16
>>687
レポートご苦労様。
インスコの時に参考にさせてもらいまつ。

689 :ななしへたぐらま ◆XcB18Bks.Y :03/07/12 00:44
>>670
直接の原因はおそらくまだ子フォームAが作られていないうちにAを操作しようとしたからです.
おそらくメインフォームのOnCreateイベントハンドラからこの手続きを呼び出されたのだと思います.
(Delphiでは最初に自動生成されるフォーム=メインフォームです.プロジェクトソースを見ると一目瞭然)

子フォームの自動生成をやめてOnShowイベントハンドラから呼び出すようにすればこの例外は発生しませんが,
この場合はAが存在しません.またこの手続きの処理対象が常にAなので2つ目以降のフォームではうまくいきません.
(2つ目以降の子フォームはAではない)
この対策は2つ考えられます.
i) 引数で子フォームの実体を指定する
procedure Clr_Image(ChildForm: TMDI_A; WakuColor,NaibuColor ・・・);
with ChildForm.Image1.Canvas do // (←)
(以下略)
ii) この手続きを子フォームの公開された(public)メソッドにする
procedure Clr_Image(WakuColor,NaibuColor ・・・);
with Image1.Canvas do // (←)
(以下略)


690 :デフォルトの名無しさん:03/07/12 03:16
かちゅ〜しゃはスレ表示部分に IE コンポーネント(多分 TWebBrowser)を
使ってますよね? そこで、質問なんですが、そこに自分で生成した
HTML を流し込む方法ってどうやるんでしょうか?

例えば、strings とか TStrings の変数に '<HTML><BODY>ほげほげ</BODY></HTML>'
というようなデータを入れておいて、コンポーネントに流し込む…
と、言う様な感じですが…

あと、このIEコンポについて詳しく解説しているサイトとかあったら教えてください。。。

691 :デフォルトの名無しさん:03/07/12 03:24
>>690
Janeのソースでもみたらどうでしょ

692 :デフォルトの名無しさん:03/07/12 03:51
>690
http://www.monazilla.org/
ここの資料室美奈代

693 :デフォルトの名無しさん:03/07/12 06:02
>>689 訂正.
i) 引数で子フォームの実体を指定する
procedure Clr_Image(ChildForm: TMDI_A; WakuColor,NaibuColor ・・・);
(中略)
with ChildForm.Image1.Canvas do // (←)
(以下略)

ii) この手続きを子フォームの公開された(public)メソッドにする
・宣言
TMDI_A = class(TForm)
(中略)
public
procedure Clr_Image(WakuColor,NaibuColor ・・・);
(中略)
end;

・実装
procedure TMDI_A.Clr_Image(WakuColor,NaibuColor ・・・);
(中略)
with ChildForm.Image1.Canvas do // (←)
(以下略)

694 :デフォルトの名無しさん:03/07/12 06:07
>>691-692 サンクス(´3`)

695 :デフォルトの名無しさん:03/07/12 07:42
>>671>>689>>693
アドバイスありがとうございます。
・まず、子フォームA_Winの生成ですが 親フォーム上のボタンのイベントから
生成しております。OldCreateOrderプロパティでは変化なかったです。

・子フォームA_Win が確実に生成してからクリアするように ボタンでクリアルーチンを
呼ぶようにしたのですが だめでした。
・693のi)についてはだめでした。

・693のii)については子フォームA_Winの内にグラフルーチンを含めるということだと
思うのですが これならば結果はOKなのですが 他にもグラフルーチンを
多数付けようとしているので別にしたいのです。

色々やってみたところ
・クリアの呼び出し部を 子フォームA_WinのFormPaint イベントに置き
・グラフルーチン側を
with (MainForm.ActiveMDIChild as TMDI_A).Image1.Canvas do
と指定すると うまくいきました。
これだと
別の子フォームB_Winから子フォームA_Winを開いても 生成はうまくいきます
しかし 子フォームA_Winを閉じると 無効なクラスの指定 と出ます。
これは B_Winから開いた2つ目以降の子フォームA_Winを閉じるときに出ます。
親フォームからの起動、終了は 問題なくなりました。
別の子フォームB_Winからの起動用には、別のクリアルーチンが必要?
はたして 上記の方法がまともなのかは自信はありません。(^^;;;

696 :デフォルトの名無しさん:03/07/12 09:03
var
i , q : Integer;
s : Stirng;

s := 'あいうえお@@かきくけこ';
q := Pos( '@@' , s ) -1;
i := Length( s ) -q;
Delete( s , q , i );

@@の後ろを@@ごと削りたいのですがこのように書くと
「変数パラメータに定数オブジェクトを渡すことはできません」
とエラーを吐くのですがどこがいけないんでしょうか。。。

697 :デフォルトの名無しさん:03/07/12 09:06
>>696
beginがない。

698 :デフォルトの名無しさん:03/07/12 09:07
>>696
>q := Pos( '@@' , s ) -1;

多分逆。var s :stringなところにリテラル書いてるのが原因かと。

699 :デフォルトの名無しさん:03/07/12 09:09
どこかで s を const にしてないかな?
あるいは、Delete が別の関数/メソッドになってるとか?
System.Deleteにしてみたら?

それから、qを使わなくても Delete(s,q,High(Integer)) でもうまくゆくはず


700 :696:03/07/12 09:19
>>697-699
レスどうも。

>>697-698
beginは書いてないだけで入っているんです。。。
すいません。。

sはconstではないんです。。
Delete(s,q,High(Integer)) も試してみましたが駄目でした。
すいません。。。

このエラーって「 s には結果を代入できませんよ」ってことなんでしょうか。

701 :デフォルトの名無しさん:03/07/12 09:21
>>696
ウザイから実験した。普通に動いたが・・・。
後、Stringの綴り変。


702 :696:03/07/12 09:22
Copyで渡せばいいことに気付きました。
すいませんでした。。

s := Copy( s ,1, q );

703 :デフォルトの名無しさん:03/07/12 09:23
s := 'あいうえお@@かきくけこ';
q := Pos( '@@' , s );
i := Length( s ) - q + 1;
Delete( s , q , i );

ShowMessage(s);

704 :デフォルトの名無しさん:03/07/12 09:27
頼むからちゃんと
>「変数パラメータに定数オブジェクトを渡すことはできません」
のエラーが再現できるソースをうぷしてくれ
違う箇所がいくつか間違ってるだけでこのエラーがでるような箇所がない

解決したみたいだからもういいけど

705 :ななしへたぐらま ◆XcB18Bks.Y :03/07/12 16:26
>>695
うーん,私が作ってみたソースをさらすので比べてみてください.まずメインフォーム・実装部.

uses ExtCtrls, P02aMDI_ChildForm;

procedure InitImage(anImage: TImage);
begin
anImage.Canvas.Brush.Color := random($1000000);
anImage.Canvas.Pen.Color := random($1000000);
anImage.Canvas.Pen.Width := 2;
anImage.Canvas.Rectangle(anImage.ClientRect);
end;

procedure TP02aMainForm.Action_NewExecute(Sender: TObject);
begin
CreateChild;
end;

procedure TP02aMainForm.CreateChild;
var
Child: TP02aChildForm;
begin
Child := TP02aChildForm.Create(Application);
InitImage(Child.Image1);
end;



706 :ななしへたぐらま ◆XcB18Bks.Y :03/07/12 16:29
次にサブフォーム
procedure TP02aChildForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action := caFree;
end;
以上.

707 :デフォルトの名無しさん:03/07/12 17:05
ClientSocketって6Personal版じゃ使えない?
コンポーネントパレットにはあるけどヘルプに説明入ってない!!
これじゃつかえないよーー!!

708 :デフォルトの名無しさん:03/07/12 17:08
TMemIniFileで、Form1.WindowStateを記録する方法を教えてください。
WriteStringでは、TStringとTWindowStateは互換性がありませんと出ます

709 :デフォルトの名無しさん:03/07/12 17:08
>>707
使わなきゃいい。Socketマンセーっと。

710 :デフォルトの名無しさん:03/07/12 17:19
>709
そのSocketの説明もヘルプには入っていない・・・・

711 :デフォルトの名無しさん:03/07/12 17:20
>>708
WriteInteger('a', 'a', Ord(Form1.WindowState));
WindowState:=TWindowState(ReadInteger('a', 'a', Ord(wsNormal)));

712 :デフォルトの名無しさん:03/07/12 17:21
>>710
入ってるはずもなく。WindowsAPI。

713 :デフォルトの名無しさん:03/07/12 17:57
>>711
ありがとうございます。
望みどおりの機能が表現できました。

714 :デフォルトの名無しさん:03/07/12 18:30
いろいろ、いじったところ
ClientSocket.Open
で、繋がることはわかった。
たぶんPersonalでもつかえるのだろう。
しかし、メッセージ受け取ったり、送ったりするのがぜんぜんわからん。
テキスト平文のストリーム形式でいいのだ
だれか、助けて!!

715 :デフォルトの名無しさん:03/07/12 18:32
>>714
イベントのリストとコード補完使えば何となく想像は付くと思うんだけれど。
まぁ、がんばれ。

716 :デフォルトの名無しさん:03/07/12 19:17
使えないものがわざわざ入ってるとは思えん
まー、がんばれ

717 :デフォルトの名無しさん:03/07/12 19:27
デルフィとカダフィ大佐って似てる?

718 :デフォルトの名無しさん:03/07/12 20:54
ClientSocket.Socket.SendText(String)
ClientSocket1.Socket.ReceiveText
で送受信できる”らしい”というのは解ったぞ!
しかし!!!復帰と改行コードが入らんので
サーバ側が読まぬ!!!
Cでいう"\r\n"はどうやって表現すればよい?
うわわーーーん!!!

719 :デフォルトの名無しさん:03/07/12 21:02
>>718
マニュアル読め

720 :デフォルトの名無しさん:03/07/12 21:04
'開業です'#13#10

721 :デフォルトの名無しさん:03/07/12 21:33
フォーカスのあるコントロールを調べるにはどうすれば良いですか?

722 :デフォルトの名無しさん:03/07/12 21:39
Screen.ActiveControl

723 :デフォルトの名無しさん:03/07/12 22:24
>>719
このスレの趣旨を読め

724 :デフォルトの名無しさん:03/07/12 22:32
>>723
ワロタ

少なくともマニュアルのページNoとか示さないとダメだな(w

725 :デフォルトの名無しさん:03/07/12 22:54
>720
ありがと!おかげでうまくいきそうだよ。

>724
Presonalなんでマニュアルなんてないんです(泣)


726 :デフォルトの名無しさん:03/07/13 00:03
>>725
Qs.pdf
oplg.pdf
dg..pdf

727 : :03/07/13 00:24
>>725
○○が無いってグチをレスするくらいなら、
1.delphiで検索
2.無ければ違う言語で参考になりそうなとこを検索

グチは書かないように。

728 :A:03/07/13 04:57
>>725
パーソナルでも付属する紙のマニュアルと同じ物が、PDFだかで収録されてたはず。


729 :670:03/07/13 07:53
>>705 >>706
なるほど 手続きに丸ごとコンポーネントを渡せばいいわけですね。
うまくいきました勉強になりました ありがとうございます。

730 :デフォルトの名無しさん:03/07/13 10:07
TSplitterがデフォルトで妙に太いんですがこんな仕様でしたっけ?

731 :デフォルトの名無しさん:03/07/13 11:15
今さ、早速Personal落としてみてやろうとしてんだけど
エディタ使いにくいね。やっぱ慣れかな、これは。

ファイル→新規→フォーム
でフォームを追加させたんだが、スタートアップフォームから表示させる方法きぼん。
はい、初心者です。すんまへん

var
frmSub: TSUBFORM;
begin
frmSub := New TSUBFORM();
frmSub.ShowDialog();

これでやってみようとしたがダメだった(当たり前だが)。
VB厨な事ヴァレヴァレだが、どなたかご指南頼みます。

732 :デフォルトの名無しさん:03/07/13 11:19
>>730
サイズを変えれば済む話

733 :デフォルトの名無しさん:03/07/13 11:23
たしかに厨の香りが漂う文字列だね

何か意味わんねーけど、プロジェクト→オプションでも弄ってみれば?

734 :デフォルトの名無しさん:03/07/13 11:34
usesにUnit2を書き足し(書かなくても自動で書かれるけど)、Form1.Button1のOnClickに、Form2.Show;と書く

735 :デフォルトの名無しさん:03/07/13 12:46
>frmSub := New TSUBFORM();

文法からやり直せ。

736 :デフォルトの名無しさん:03/07/13 12:54
超初心者スレなんだから、ちっとは優しく書けよ
できなきゃスルーしる

737 :デフォルトの名無しさん:03/07/13 12:59
こうしたいのかな。
var
frmSub: TSUBFORM;
begin
frmSub := TSUBFORM.Create(self);
frmSub.ShowModal;

738 :ななしへたぐらま ◆XcB18Bks.Y :03/07/13 14:18
>>731 以下の手順で.
1) メインフォームのユニットにサブフォーム(を定義しているユニット)を使うぜ!という宣言を追加する.
2) サブフォームを表示させるコードを自分で書く

1) メインフォームをアクティブにして[ファイル]→[ユニットを使う]を実行,使いたいサブフォームを選ぶ.
 →そうするとメインフォームのユニットのソースコードに implementation ちょっと下の方に

 uses (サブフォームのユニット名);

 というコードが追加されているはず.これがその宣言です.
 ※手で直接同じ内容を書いてもかまいません.

2) Delphiではプロジェクトオプションで特に指定しない限り
 サブフォームはアプリケーションの起動時に1個だけ作られ,隠れた状態になっていますので,
 フォームを作るコードは書かず,表示させるコードだけを書きます.

 フォームを表示させるには>734にあるようにフォームのShowメソッドを使います.
 設定画面やメッセージボックスのように閉じるまで呼び出し側に処理が戻らないようにする場合は代わりにShowModal メソッドを使います.
 フォーム名がfrmSubならそれぞれfrmSub.Show; frmSub.ShowModal; です.

 実行時に一時的に作りたい場合は>737のよう自分で生成してから表示します.
 ただし使わなくなった時点で自分でフォームを廃棄しなければなりません
 これはフォームのRelease メソッドで行います.フォーム名がfrmSubなら frmSub.Release; です.
 また起動時にフォームを作ってしまわないようにプロジェクトオプションでこのフォームを自動生成の対象から外します.
 ([プロジェクト]→[オプション]で[フォーム]タブを開き,このフォームを選び,[>]ボタンを押します)

739 :デフォルトの名無しさん:03/07/13 18:14
Delphi7なんですけど、
プログラムを作成中(エディタでの編集中)に突然
「モジュール 'dcc70.dll' のアドレス 00B5574F でアドレス 626CAE88に対する書き込み違反がおきました。」
このエラーが出てエディタが利用不能になりました。

PCを再起動しても同じ位置に来ると同様の症状が出ますが、
何が原因なのか判りません、何か対処方法はありませんか?

740 :デフォルトの名無しさん:03/07/13 18:18
コード補完機能で落ちてるのかな

741 :739:03/07/13 18:38
>>740
おっしゃる通です、
一度落ちると「書き込み禁止」になってるみたいです。
コード補完が落ちる原因って何なのでしょうか・・・。

742 :739:03/07/13 18:54
取りあえず解決しました

1つづつフォーム上のコンポーネントを消して
コード補完を試して原因コンポーネントを探し出して消したら直りました。
ただのEditなのですが、何が悪いのか・・・。
因みに、>>739でエラーが出る状態でもコンパイルは普通に通ったりするので
>>740さんがおっしゃる通りコード補完のバグなのでしょうか?

743 :デフォルトの名無しさん:03/07/13 20:53
初心者スレでコンパイラやIDEのバグを疑うのはちょっと気が早いと思われ

744 :デフォルトの名無しさん:03/07/13 21:00
Delphi6使ってるけど、コード補完でエラーはよくおきるよ。
それ以降、コード補間不能になることもあるし、エディタにまったく入力できなくなることもある。
7でも似たようなバグがあるんだね

745 :デフォルトの名無しさん:03/07/13 21:14
コード保管えらー出たときは、一番上の単語からポップアップさせていけば、どこでエラー起きてるのか分かるよ

746 :デフォルトの名無しさん:03/07/13 22:00
ボーランド製はコード補完にもバグがあるのか。
やっぱりクソはクソだな。

747 :デフォルトの名無しさん:03/07/13 22:05
MS製はバグが無いの?

748 :デフォルトの名無しさん:03/07/13 22:47
>>747
マイクロソフトのソフトに今までバグなんて存在したことはないよ
全部仕様通りに実装されているからね
バグだらけの某とは大違いだね(嘲笑激藁

749 :デフォルトの名無しさん:03/07/13 22:51
まあ、マイクロソフトが仕様だって言ってましたから(微妙な笑いをしつつ)と言えば
客も納得してくれるんだよね。

750 :デフォルトの名無しさん:03/07/13 22:54
>>749
しねえよ。
「MSから買ったんじゃない、あんたのとこから買ったんだ!!」って切れられた。

751 :デフォルトの名無しさん:03/07/13 23:01
MSにバグは不要だからな

752 :デフォルトの名無しさん:03/07/13 23:05
必要なバグなんて不必要なバグに比べればはるかに少ないがな

753 :デフォルトの名無しさん:03/07/14 04:35
どんなソフトにもバグは必ずあるからね、バグだ!って騒ぐのは素人。
要するに、発生したバグに対する対応が問題、MSはバグの対応が随分前から悪いけど、
ボーランドもここ数年良いとは言えなくなってるね、
コード補完のバグは探しようがないけど、VCLのバグなんてこっちが修正箇所を
書いてメールしたのにパッチも出さないし返事も来ない。(w;

その点、オープンソースなソフトはバグのパッチを送ったら
かなりの頻度で取り込まれるし対応のレスポンスも凄くいい。

Delphi本体がオープンにならねーかなぁ・・・。

754 :デフォルトの名無しさん:03/07/14 05:42
WideCharToStringやStringToWideCharは何のためにあるのでしょうか?
AnsiStringとWideStringは双方向に代入できるみたいなので、ワイト文字列関数が存在する意味がよくわかりません。


755 :デフォルトの名無しさん:03/07/14 06:44
厨房除けです

756 :デフォルトの名無しさん:03/07/14 10:15
>>739
あるある!
いままであった中で一番笑えたのは、
まちがってtype PA=^PAになってたこと。
ほんとはPPA=^PAなんだけど、hppからの移植でミスった。
無限ループじゃん!

757 :Delphiの限界?:03/07/14 13:48
type
 TProc = procedure of object;
 TProcArray = array of TProc;

function IndexOf(const a: TProcArray; proc: TProc): Integer;
var
 n: Integer;
begin
 for n := 0 to High(a) do
  if @a[n] = @proc then // <-- 手続きアドレスの比較ができない。
  begin
   Result := n;
   Exit;
  end;
 Result := -1;
end;


758 :ななしへたぐらま ◆XcB18Bks.Y :03/07/14 14:15
>>746
この件については同意.目先の新機能以前にバグはつぶしてほしい.

>>754
多分昔の名残です.ワイド文字列はDelphi3からだったと記憶しています.
Del3の新機能の中でも地味なもので
FDELPHIで謎全氏が話に出されるまで気にもとめていませんでした.


759 :デフォルトの名無しさん:03/07/14 14:18
>>757
試したら、出来てる気がするけどニャー

760 :デフォルトの名無しさん:03/07/14 14:27
限界厨の限界なんだろ

761 :デフォルトの名無しさん:03/07/14 14:59
>>754
API関数に渡すときなどに必要。

762 :デフォルトの名無しさん:03/07/14 19:27
>>754
文字列の切り出しとかするときに必要になる。
この関数があるおかげで日本語文字列の置換とかすげー楽だよ。

763 :デフォルトの名無しさん:03/07/14 19:36
Webブラウザを作成するにはIndyのどのコンポーネントを使用すれば
よいのでしょうか

それと簡単な例でいいので使用の仕方を教えていただけないでしょうか

764 :_:03/07/14 19:38
http://homepage.mac.com/hiroyuki44/hankaku08.html

765 :デフォルトの名無しさん:03/07/14 19:41
>>763
サンプルが突いてきたハズだが…
それでもわからんならTWebBrowserのほうがいいんじゃねーの

766 :デフォルトの名無しさん:03/07/14 20:03
>>753
>Delphi本体がオープンにならねーかなぁ・・・。
なにげにむごいな。某ランド潰れちまえってことじゃん(w
OpenWatcomの惨状を見ればオープンにすりゃいいってもんじゃないって分かるけどなあ。


767 :デフォルトの名無しさん:03/07/14 21:03
2ちゃんねらーの力でOpenWatcomを祭ってみる?w

768 :デフォルトの名無しさん:03/07/14 21:58
フォームの最大化や、サイズ変更を出来ないようにするのはどうやるの?

769 :デフォルトの名無しさん:03/07/14 22:03
>>767
OpenWatcom C++ スレへどうぞ


770 :デフォルトの名無しさん:03/07/14 22:11
>>768
フォームのBorderIconsプロパティ

771 :デフォルトの名無しさん:03/07/14 22:12
あ、サイズ変更も禁止ならBorderStyle

772 :デフォルトの名無しさん:03/07/14 22:16
>>768
BorderIconプロパティをいじるのが簡単。
EnableMenuItem APIを使う方法もある。


773 :デフォルトの名無しさん:03/07/15 00:02
ShowMessage( 'フォームの最大化もサイズ変更も、しないでネ!!' );

774 :デフォルトの名無しさん:03/07/15 09:06
Delphi6 personalでアセンブリ言語のソースコード作れます?
bccでは-sつけるような感じで

775 :山崎 渉:03/07/15 09:43

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄

776 :デフォルトの名無しさん:03/07/15 12:37
DelphiはDelphi言語のソースコードを作る為のソフトウェアです。

777 :デフォルトの名無しさん:03/07/15 13:54
NavigateとNavigate2の違いはPIDLを使えることだと各所にかかれてるけど、
PIDLってどこからもってくるの?
PItemIDListがそれらしい気がするけどOleVariantに代入できない!

778 :デフォルトの名無しさん:03/07/15 20:17
コンポーネントの事でチョット混乱しているのでアドバイスください

http://hogehoge2001.tripod.co.jp/note-delphi.html

ここを読んでいると、Delphi 標準で入っている TWebBrowser より、
ActiveX コントロールをわざわざインストールしていますが、何故何でしょう?

あと、uses に SHDocVw_TLB, MSHTML_TLBを追加しろとあるんですが、
これの入手方法を教えてください。

TWebBrowser は標準で入ってくるものを削除して、
Delphi のコンポーネントインストールの ActiveX コントロールで
インストールした方を使った方がいいのでしょうか?

779 :デフォルトの名無しさん:03/07/15 20:28
>>778
そのページのタイトルをよくみてください
PersonalにはTWebBrowserは入っていません
またusesに追加する件ですが別途なにか手に入れる必要はありません

780 :デフォルトの名無しさん:03/07/15 20:33
某スキャナ制御用DLLを使おうとC++のヘッダファイルを
pasに書き換えていっているのですが、
これで正しい書き方なのかよく分からず…。
途中段階で動かしてみたらスタックオーバーフローになったり。
(まだどのAPIも動作していない段階で)

なにかC→PAS書き換えの参考になる資料ありませんか?
一応「H to Pas Converter」を使って書き換えの基にはしているのですが…。

781 :デフォルトの名無しさん:03/07/15 20:49
>>780
stdcallとかcdeclとか付けてる?

782 :780:03/07/15 21:03
>781
一応は。

#define DllImport__declspec( dllimport )
#ifdef __cplusplus
extern "C" {
#endif
DllImport int WINAPI HogeHogeAPI( char *str);
#ifdef __cplusplus
}
#endif

こういうのを以下のようにしています。
function HogeHogeAPI(Scanner: PChar): Integer; stdcall; external 'HogeHoge.DLL' name 'HogeHoge';


一部関数ポインタを渡すところがあったりします。
DllImport int WINAPI HogeHogeExec( char *file, char *buf, int (*abort)( int n, int d));

これを以下のように。
type
TAbortFunc = function (n: Integer; d: Integer): Integer; stdcall;
function HogeHogeExec(file: PChar; buf: PChar; abort: TAbortFunc): Integer; stdcall; external 'HogeHoge.DLL' name 'HogeHogeExec';

他には引数の「int *value」を「var value: Integer」にしたりしているところもありますが…


783 :デフォルトの名無しさん:03/07/16 11:20
TForm1 = class(TForm)
  panel: TPanel; // (1)
 published
  //panel; TPanel; // (2)
 end;

デザイン時、フォーム上にパネルを張ると、コード上は (1) に追加されますが、
これを (2) の位置に移しても問題ないものなのでしょうか?

一応、実行はできるようなのですが、他に影響はないでしょうか?

784 :デフォルトの名無しさん:03/07/16 11:29
実行できるんなら、影響ないし。
出来ないなら、影響がある。

785 :デフォルトの名無しさん:03/07/16 11:30
>>783
published の意味を調べてみよう

786 :デフォルトの名無しさん:03/07/16 11:33
>>783
(1)の領域は「Delphiが使うから勝手にいじらないで」
と書いてあるでしょ

787 :デフォルトの名無しさん:03/07/16 12:19
なぜ移動したいのかわからん。理由もわからずに移動してここで質問すんなよ。
そんなことするとバグが出るぞ。

「スコープ」についてもそっと調べなさい。

788 :デフォルトの名無しさん:03/07/16 12:41
初歩的なことかもしれません。
ユーザーがアプリを閉じようとしたとき、確認ダイアログを出し、
OSシャットダウンのときは確認ダイアログなしで閉じる方法を教えてください。

789 :デフォルトの名無しさん:03/07/16 13:07
WM_ENDSESSIONのメッセージハンドラを書く。

790 :デフォルトの名無しさん:03/07/16 14:08
>>783
パネルを乗せただけなら問題ないけど、パネルのサイズを変更したり、パネルの上に何かのせたり、
パネルのイベントを記述したりすると、問題が出ると思うよ。

具体的にはpublishedでないと .DFM のデータがどのパネルのデータか識別できなくなる。


791 :デフォルトの名無しさん:03/07/16 15:29
>>783
それ同じ意味。
つまり、同じスコープってこと。

792 : :03/07/16 15:55
一定間隔で文字を表示する、うまいやり方を教えて下さい。

今は、TLabelの配列を動的に表示しています。

ArLabel : array of TLabel;

ArLabel[i].caption := inttostr(i);

こんな感じで、後はTopやLeftを工夫して、一定の間隔で表示しています。

でも、これだと、文字が増えれば増えるほどリソースを無駄に使用する事になると思います。
宜しくお願いします。

793 :デフォルトの名無しさん:03/07/16 16:06
設計時にデザインするつもりが無いならTLabelは不要。TextOutで直接書いちゃえ。

794 :デフォルトの名無しさん:03/07/16 16:08
TLabelはWindowsコントロールではないので、沢山使ってもWindowsリソースはメモリ以外は消費しません。
メモリも最近は大容量なので沢山使っても問題になることはないと思う。

でも自分ならそういう場合はPaintBoxで OnPaint上にコードで描くと思う。

795 :デフォルトの名無しさん:03/07/16 18:59
俺ならTBitmapに描いてからPaintBoxでOnPaint上で描くと思う。

796 :デフォルトの名無しさん:03/07/16 19:23
また エ ロ グ ラ マ か

797 :デフォルトの名無しさん:03/07/16 22:03
> TLabelはWindowsコントロールではないので、沢山使ってもWindowsリソースはメモリ以外は消費しません。
NT系ではWindowsコントロールであっても別にメモリ以外に必要な
リソースなんて無いに等しいのだが。

798 :デフォルトの名無しさん:03/07/16 22:06
メモリがリークすると何が駄目なのでしょうか?
あと、終了時にDelphiが全部やってくれるんじゃないのですか?

799 :デフォルトの名無しさん:03/07/16 22:49
失礼します。
***すれ立てるまでもない質問はここで 第40刷*** から流れてきました。

DELPHIでclipbordを使ったプログラムを作っているのですが、
クリップボードを開くことが出来ませんというエラーが出ます。
プログラムの流れは、まずプログラムを立ち上げておき、notepad
や他の文字列が入力できるソフトに計算式を入力します
(10+30*10 とか)そしてその行にカーソルを合わせて
SHIFT+ENTERを押すと、先ほど立ち上げておいたアプリがhotkeyに
反応してカーソルのある行をkey_eventを実行してコピーします
(キーイベントでCTRL+Cを実行する)そして得た文字列で計算を
するのですが、上記のkey_eventでテキストがコピーされたりされなかったり
今あるクリップボードの末尾に文字列が追加されたり、動作がうまくいきません。
三日ほど色々探したのですが見つからずココへ来ました。

お知恵を貸していただけませんでしょうか?

800 :デフォルトの名無しさん:03/07/16 22:59
クリップボードに何も記録されてないときは開けないんじゃないかなあ。
notepadのようなソフト全てがCTRL+Cでコピーというのに対応してる保障も無いし。

801 :デフォルトの名無しさん:03/07/16 23:25
>>799
メモ帳がクリップボード操作している最中にDelphiで作ったアプリがクリップボード開こうとしているのでは?
key_eventの後にウェイトを入れるかメモ帳がIdle状態になるまで待つかすれば良いのではなかろうか。

802 :デフォルトの名無しさん:03/07/16 23:54
>>801
あ、こころあたりがあります^^;
CTRL+Cを実行させた後すぐにclipbord.AsTextをつかったりしてます。
ウェイトを入れるかidelですか、、、少し調べて見ます

803 :デフォルトの名無しさん:03/07/17 00:21
中村の里にクリップボードの変更を検知するコンポーネントが
あったはず。それを使ってみてはどうでしょう。

804 :デフォルトの名無しさん:03/07/17 01:48
TMemo内のTextをFindDialogで検索しようとするとき、
Pos関数を使うと検索文字が複数ある場合でも
最初にマッチする文字の場所しか取得できないので困ってます。
いわゆる「次を検索する」っていうやつはどうすれば実装できますか?

805 :デフォルトの名無しさん:03/07/17 01:55
ループ回して文字列を検索する。
StringよりPCharにすると速くなる。
ダブルバイトはLeadBytesで判定する。

806 :デフォルトの名無しさん:03/07/17 03:24
D7ならPosExてのがあるからそれ使う

807 :デフォルトの名無しさん:03/07/17 03:35
ほんとにくだ質なんですが…
TFormを継承した独自class(ダイアログ型のウィザードみたいな感じ)を作っています。
これをメインから以下のように呼んでいるのですが、

cpSEWizard := TcpSEWizard.Create(Owner);
cpSEWizard.Show;

ウィザードを閉じた後で、メイン側で「cpSEWzard.Free」を記述する必要はあるのでしょうか。
それとも、TcpSEWizardで勝手に発生している、onCloseで事足りているのでしょうか。

808 :デフォルトの名無しさん:03/07/17 03:57
>>805
LeadBytesで検索したら
http://halbow.cool.ne.jp/VCL05.html
を見つけますた
thx

809 :デフォルトの名無しさん:03/07/17 04:25
Delphi7 でTcpclient Tcpserver を使った簡単な通信プログラムサンプルを教えて。
Delphi6 の時にあった ServerSocket ClientSocketと同じように使えると思ったら
うまくいかなかったもので。。。

810 :デフォルトの名無しさん:03/07/17 06:08
>>807
メインか自身で Free したほうが良い。
いちおうアプリ終了時に Owner が Free してくれる。
ShowModal するのが楽だけど、出来ないならこうする。

with TcpSEWizard.Create(Owner) do
Show;

として、onClose に Release を入れておく。


811 :デフォルトの名無しさん:03/07/17 06:41
Editコンポーネントに、整数以外入力できないように
するにはどうやったらええの?

812 :デフォルトの名無しさん:03/07/17 06:51
>>810
ありがとうございます。

813 :デフォルトの名無しさん:03/07/17 06:51
>>811
OnKeyPressイベントで整数以外をはじく

814 :デフォルトの名無しさん:03/07/17 06:54
追加。
DelphianWorldに数値入力用のEditコンポーネントがあった気がする。
他にもいろいろ便利なコンポーネントが登録されているので
一度見てみるべし。

815 :792:03/07/17 10:00
>>793
>>794
>>795
なるほど、コンポーネントを使わないという方法もあったんですね。
何かをしようとするとすぐにコンポーネントの使い方を工夫しようとか
フリーのコンポーネントを探そうとかしていました。
ありがとうございました。

816 :デフォルトの名無しさん:03/07/17 10:12
TFormにはEnabledがありますが、あれは何に使うのでしょうか?

817 :デフォルトの名無しさん:03/07/17 10:12
http://localhost/pc2.2ch.net/

818 :デフォルトの名無しさん:03/07/17 10:13
http://localhost/?pc2.2ch.net

819 :デフォルトの名無しさん:03/07/17 10:14
http://localhost/#pc2.2ch.net

820 :デフォルトの名無しさん:03/07/17 11:03
>>795
省メモリ化という意味では逆効果だろ。

821 :デフォルトの名無しさん:03/07/17 11:32
メモ帳的な物を作ってるんだけど、メインメニューでCtrl+Vとかのショートカットイベントに
SendMessage(Memo1.handle, WM_PASTE, 0, 0);
とか書くとファインドダイアログのエディット部分に対してペーストを行う場合でもメモコンポにペーストが行われてしまう。
それでファインドダイアログが呼ばれたときの処理を別に書こうとしたんだけど、
ファインドダイアログのエディット部分にペーストする方法がわかりません。
どうしらたいいんでしょ?

822 :デフォルトの名無しさん:03/07/17 11:37
>>821
GetFocusが一番楽かな

823 :デフォルトの名無しさん:03/07/17 11:37
if ActiveControl = Memo1 thenとかやれば

824 :デフォルトの名無しさん:03/07/17 12:02
>>816
ShowだけどShowModalっぽくしたい時。
処理中でフォームを触らせたくない時。


825 :デフォルトの名無しさん:03/07/17 16:38
>>820
再描画するとき楽だし速くて良いと思うんだけどね。

826 :デフォルトの名無しさん:03/07/17 16:42
ラベルなんて16777215個も配置しない限りは無問題だと思うけどな。
特に一時的にしか表示されないダイアログとかは。
なんか小手先でメモリケチったり数クロック早くなるようなコード書きたがる奴がいるけど
それが本当に必要なのか・効果があるのかと問い詰めたい。

827 :デフォルトの名無しさん:03/07/17 16:45
>>821
if Assigned(ActiveControl) then
SendMessage(ActiveControl.Handle, WM_PASTE, 0, 0);

828 :デフォルトの名無しさん:03/07/17 16:47
>>792のようなやつだとTLabel使う方が逆に面倒くさいんだが。

829 :デフォルトの名無しさん:03/07/17 16:59
メモリなんてガシガシ使っちゃえば良いじゃない

830 :デフォルトの名無しさん:03/07/17 17:32
DBを使わないプログラム向けのDBCtrlGridみたいなコンポーネントありませんか?
VBにはなんかそういうのあったと思うけど…。

831 :デフォルトの名無しさん:03/07/17 17:58
簡易ブラウザを作ってて IEコンポか mozillaかどっちにしようか、
mozilla(ActiveX) を試してみたんだけど、これってこんなに糞重いの?

おまけにフォームにコントロール貼り付けてから、
マウスでクリックもできねー、移動もできねーときたもんだ

こんなもんなんでしょうか?

832 :デフォルトの名無しさん:03/07/17 18:04
>>831
おとなしくIEにしましょう

833 :デフォルトの名無しさん:03/07/17 22:02
他にも、Gecko(?)とか言うブラウザコンポがあるらしいな
この板のどっかにスレがある

834 :デフォルトの名無しさん:03/07/17 22:25
checkBoxが"Checked"の時に、
あるeditを「記入できない」ようにしたい時はどうすればよろしいですか?

835 :デフォルトの名無しさん:03/07/17 22:29
EditのReadOnlyをトゥルー

836 :デフォルトの名無しさん:03/07/17 22:34
editのenabledをfalse

837 :デフォルトの名無しさん:03/07/17 22:35
記入できないってことを視覚的に表現したくないなら>>835

838 :デフォルトの名無しさん:03/07/17 22:37
EditのVisibleをFalse

839 :デフォルトの名無しさん:03/07/17 22:39
早いレスありがとうございます!

840 :デフォルトの名無しさん:03/07/17 22:42
EditのFreeをCall


841 :デフォルトの名無しさん:03/07/17 23:00
struct List
{
std::string buf_;


と、

printf("%s",l1.buf_.c_str());

を日本語で説明するとどういう事でしょうか?教えてください。。

842 :デフォルトの名無しさん:03/07/17 23:04
スレタイ読めヴォケってことです。

843 :831:03/07/18 00:06
>>832
うむむ…やはり好きじゃなくても、IEコンポ使うしかないか

で、IEコンポの使い方なんですが、自分なりに探してみた所
http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/webbrowser/browser_control_node_entry.asp
ここと monazilla(w の資料室ぐらいしか見つからなかったんですが、
他に解りやすくサンプル付きで解説しているサイトとかページを
知っていれば教えてください。できれば、日本語が良いです


844 : :03/07/18 00:17
>>843
どんな探し方したんか知らんが、それだけってことはあり得ないと思う。
よっぽどアレな探し方なのか…。
あんまり言いたくないけど、「目がチカチカするページ」は検索出来なかったのかと。

845 :デフォルトの名無しさん:03/07/18 00:25
ui?

846 :デフォルトの名無しさん:03/07/18 00:33
WindowsXPでDelphi7 Personalのヘルプのテキスト検索機能が使えないんですが、これはバグですか?

847 :デフォルトの名無しさん:03/07/18 00:58
仕様です。

848 :831:03/07/18 01:13
>>844
それは、どこですか?

849 :デフォルトの名無しさん:03/07/18 01:38
>>846
バグですが何か?

850 :デフォルトの名無しさん:03/07/18 01:47
>>848
MLでTWebBrowserを検索したときに一番多く答えている人のサイト

851 :デフォルトの名無しさん:03/07/18 01:49
>>848
IEコンポーネントって、TWebBrowserの事だよね?

IEコンポーネントを使い倒すスレ
http://pc2.2ch.net/test/read.cgi/tech/982930049/
Delphi はじめの一歩
http://delphi.sakura.vg/
あとGoogle
http://www.google.com/search?q=TWebBrowser&lr=lang_ja

852 :デフォルトの名無しさん:03/07/18 01:55
>>850
お前性格と要領が悪そうだね。うんこレスならしなくていいよ。

853 :デフォルトの名無しさん:03/07/18 02:50
うい

854 :デフォルトの名無しさん:03/07/18 03:02
過去スレで何度か出てるが、個人的にはアレよりTEmbeddedWBの方がオススメ。
TWebBrowserのバグ(?)が修正されてる他、初めからD&Dに対応してたりと、TWebBrowserよりパワーアップしている。

855 :831:03/07/18 09:52
>>851
レスありがとうございます。"TWebBrowser" で検索する事をしてませんでした。
"IEコンポーネント" "リファレンス" とかで検索してました

あと、この板内のスレッドは読みましたが、ボクの欲しい情報が得られなかったので
もう少し調べてみます。

>>854
TEmbeddedWB ってのもあるんですね。これも調べてみます

856 :デフォルトの名無しさん:03/07/18 11:15
BDEを使ったデーターベースアプリがあったとして
データベースをBDE→InterBase(FireBird)に変更するには
どのような作業が必要でしょうか?
めんどくさい?

857 :デフォルトの名無しさん:03/07/18 11:26
他人様の作ったソフトに「最新の情報に更新(F5)」とかのショートカットを送るほうほうを教えてください。


858 :デフォルトの名無しさん:03/07/18 14:06
>>857
何がしたいのかよくわかりません。

859 :デフォルトの名無しさん:03/07/18 14:17
ShellListViewで、ネットワーク接続しているドライブにアクセスした時に
エラーになるのですが、どう対処したらいいでしょうか?

860 :デフォルトの名無しさん:03/07/18 15:48
PageControlで、新しいTabSheetを追加するときに、
内容が空でなく、Buttonとかを、追加するTabSheetに持たせるにはどうすればいいんですか?

861 :860:03/07/18 15:56
動的に作成した場合で。

862 :デフォルトの名無しさん:03/07/18 17:26
bo-ranndoのサイトに載ってます

863 :デフォルトの名無しさん:03/07/18 18:54
>>860
動的に作ったボタンなどのParentプロパティを動的に作ったTabSheetにする。

Button.Parent := NewTab;

864 :デフォルトの名無しさん:03/07/18 19:51
OpenDialog コンポーネントで、「読み取り専用として開く」のチェックが選択されたか
されていないかの状態を調べるにはどうすればいいでしょか?

865 :デフォルトの名無しさん:03/07/18 20:52
TOpenDialog.Options

866 :ななしへたぐらま ◆XcB18Bks.Y :03/07/18 21:25
>>860
タブシートにのせるコンポーネントの配置やその他の設定を設計時にやってしまいたいのでしたら,
それらを載せたフレームを作れば,実行時は基本的にそのフレームを生成するだけで済むと思うので
多少楽になると思います.ただ,以下に当てはまるならこんな手を使うまでもないかも.

・同じ内容のページが不特定多数→タブコントロールを使う
・起動時には見えないページを作る→タブシートのTabVisibleプロパティでページを隠す


867 :デフォルトの名無しさん:03/07/19 00:18
DELPHIでドラクエ5みたいなRPGつくれますか

868 :デフォルトの名無しさん:03/07/19 00:23
>>867
つくれますが、あなたは今日から「ツクールシリーズ」で爆速プログラミング
人生を歩んでください。

869 :デフォルトの名無しさん:03/07/19 00:30
>868
ツクールイクナイ

870 :デフォルトの名無しさん:03/07/19 08:32
FFじゃなくてドラクエってとこが謙虚でいいかも

871 :デフォルトの名無しさん:03/07/19 08:50
5っていうところも弄ってあげろよ(ワ

872 :デフォルトの名無しさん:03/07/19 11:21
TMemoをTExMemoに差し替えたいんだけど、
Memo1っていっぱい書いてるし、イベント半銅鑼もいっぱい。
簡単に差し替えちゃう裏技ないですか?

873 :デフォルトの名無しさん:03/07/19 11:52
単純にソースを置き換えする。

それでもうまくいかなければ、GExpertsを使うとよろし。

874 :デフォルトの名無しさん:03/07/19 11:57
↑補足 エディタ上でCtrl+R

875 :デフォルトの名無しさん:03/07/19 12:25
しょっぱい質問ですね

876 :デフォルトの名無しさん:03/07/19 19:45
>>875
超初心者向けのスレなんだからガマン汁

877 :デフォルトの名無しさん:03/07/19 20:49
会社の仕事やって?
そんなら Personal版でなく Pro版こうて Borland社の有料サポート頼みなはれ。
そなら、どんな幼稚な質問やかてとことん付きおうてもらえるやろ。
今回の名無しはんの回答がもし有料ならナンボになるんかいな?
カネはろうてくれはるんやら、Borland社よりチイとは勉強しまっせ。
(大阪人はすぐカネの話や、なん思わんといてや(^^;)

878 :デフォルトの名無しさん:03/07/19 21:22
(インド人はすぐカレーの話や、ナン焼いといてや(^^インド)

879 :デフォルトの名無しさん:03/07/19 21:48
>>877
関西人は総じてアホやと思われるんでそのしゃべりやめてもらえませんか?

880 :デフォルトの名無しさん:03/07/19 23:10
アホではなく馬鹿だね。馬鹿。

881 :デフォルトの名無しさん:03/07/19 23:49
醤油かけといたらええねん。

882 :デフォルトの名無しさん:03/07/20 00:10
粉や粉!小麦粉持ってこい!

883 :デフォルトの名無しさん:03/07/20 01:12
会社ならエンタ買えよ

884 :デフォルトの名無しさん:03/07/20 02:07
>>883
資本金1円なので無理です

885 :デフォルトの名無しさん:03/07/20 03:21
2chで関西弁(エセ)使う奴は出身関係なく9割馬鹿。
経験上。

886 :デフォルトの名無しさん:03/07/20 03:35
添削します。

>2chで関西弁(エセ)使う奴は出身関係なく9割馬鹿。
9割は馬鹿。

887 :デフォルトの名無しさん:03/07/20 06:36
というか、2chを使う奴は出身関係なく9割り馬鹿。
経験上。

888 :デフォルトの名無しさん:03/07/20 11:01
知識はあっても馬鹿ってやつは多いかも

889 :デフォルトの名無しさん:03/07/20 17:49
フォームを 縦方向だけ リサイズしたいんです。
Form.OnCanResizeで

NewWidth:=300;

とかすれば横方向には300以上大きくならないんですけど、
ウィンドウの端をドラッグするときに出てくる破線(?)が横方向にも伸びてしまって
なんだか見栄えが良くありません。TMidi Playerとかだとドラッグしようとしても
破線がウィンドウに貼りついて、視覚的にも「これはリサイズできないんだな」
と分かっていい感じだと思うんですけど、あれってどうやってるんでしょうか。
質問が分かりずらくてすみません。

890 :デフォルトの名無しさん:03/07/20 17:54
>>889
"WM_GETMINMAXINFO"でぐぐると幸せになれるかもしれない…

891 :デフォルトの名無しさん:03/07/20 18:08
>889
試してないけどConstraintsプロパティで制限できると思う。

892 :デフォルトの名無しさん:03/07/20 18:09
>>890
検索したら、某国のサイトに書いてありました。dクス
http://www.borland.co.jp/qanda/delphi/d0005105.html

893 :デフォルトの名無しさん:03/07/20 18:13
>>891
情報ありがとうございます。
試してみたのですが、こちらは破線がびょびょっと伸びてしまいました。。

894 :デフォルトの名無しさん:03/07/20 18:32
変数って初期化しなかったら
4376384が代入されるの?

895 :デフォルトの名無しさん:03/07/20 18:52
>>894
仮にそうだとしても、コンパイラの実装に依存しそうなコードは書かないほうがよろしい。

896 :デフォルトの名無しさん:03/07/20 19:03
ボタンをクリックしたら、マウスカーソルを動かすのってどうやるん?

897 :デフォルトの名無しさん:03/07/20 19:18
ShowMessage('マウスの下に万札がはさまってますよ。');

898 :デフォルトの名無しさん:03/07/20 19:30
>>897
ちょいワロタ

899 :デフォルトの名無しさん:03/07/20 20:07
>>897
それはマウスカーソルをユーザーに動かさせる方法だ

900 :デフォルトの名無しさん:03/07/20 20:15
マジレスカコワルイ

901 :デフォルトの名無しさん:03/07/20 20:27
Windows.SetCursorPos

902 :896:03/07/20 21:26
(゜д゜(  人  ) =3 プ

903 :デフォルトの名無しさん:03/07/20 23:50
混沌としている

904 :デフォルトの名無しさん:03/07/21 00:46
Form1のボタンをクリックしたら
Form2のラベルが変化するようにしたい
どうすればいい?

905 :デフォルトの名無しさん:03/07/21 00:49
1.Form2のラベルの妖精さんにお願いする。
2.Form2を「uses(ユニットを使う)」で参照して、Form1のボタンに
Form2のラベルを変えるコードを書く。


906 :デフォルトの名無しさん:03/07/21 01:06
3. Borlandのサポートに電話をかける

907 :デフォルトの名無しさん:03/07/21 01:28
904にマジレスしていい?

908 :907:03/07/21 01:29
ごめん。sage忘れた。

909 :デフォルトの名無しさん:03/07/21 01:44
>>907
sage忘れてたから駄目って言ったら
マジレスしないの?

910 :デフォルトの名無しさん:03/07/21 06:18
>>904
このスレで3回以上は質問されてる。
レス抽出使ってね音符

911 :デフォルトの名無しさん:03/07/21 09:06
フォームの右上の×ボタンを消すのはどうやんの?

912 :デフォルトの名無しさん:03/07/21 09:40
フォームのプロパティのSystemButtonだかをFalseにしろ

913 :デフォルトの名無しさん:03/07/21 09:58
>912
うるせーしね

914 :デフォルトの名無しさん:03/07/21 10:34
てめーはイ`

915 :デフォルトの名無しさん:03/07/21 11:26
>914
氏ね

916 :デフォルトの名無しさん:03/07/21 11:45
>>915
御主人様、私は氏んだ方が宜しいのでしょうか?

917 :デフォルトの名無しさん:03/07/21 11:50
unit LIVE;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption:='い`';
end;

end.


918 :デフォルトの名無しさん:03/07/21 15:29
Timerコンポーネントの使い方誰か教えろ

919 :デフォルトの名無しさん:03/07/21 15:32
はやくTimerコンポーネントの使い方教えろ

920 :デフォルトの名無しさん:03/07/21 15:33
>>918
そんな態度で教えて貰えるとでも思ってるの?
夏休みだからって調子乗るなよ。
http://www.geocities.co.jp/SiliconValley-SanJose/2560/delphi4/vcl/index.htm

921 :デフォルトの名無しさん:03/07/21 15:37
言い方がきつくてもきちんと教えてあげる
>>920萌え

922 :デフォルトの名無しさん:03/07/21 16:21
>>918-919
あんなもん見たら分かるだろ。

923 :デフォルトの名無しさん:03/07/21 16:30
>922
馬鹿だからわかんにゃーい

924 :デフォルトの名無しさん:03/07/21 17:09
>>917
Label1がないよ

925 :デフォルトの名無しさん:03/07/21 17:21
Delphiってプログラミングって言うより
アプリケーションツクールだよね

926 :デフォルトの名無しさん:03/07/21 17:23
C言語とかだあと入力出力演算全部自分で書かなきゃいけないけど
Delphiならフォームにペタペタ貼り付けて
あとはちょこっとコード書くだけだからC言語よりスゲー楽。

927 :デフォルトの名無しさん:03/07/21 17:43
Delphiって
型って
Integer型とString型とBoolean型しかないの・・・?

928 :デフォルトの名無しさん:03/07/21 18:25
>>925
君が使う分にはその程度なんだろうね。

929 :デフォルトの名無しさん:03/07/21 18:27
>>925
なら WinAPI 駆使して作ってごらん

930 :デフォルトの名無しさん:03/07/21 18:28
age

931 :デフォルトの名無しさん:03/07/21 18:32
>>927
単純型、順序型、整数型、文字型、論理型、列挙型、部分範囲型、実数、文字列型、構造化型、集合
配列型、レコード型、ファイル型、クラス型、クラス参照型、インターフェース型、ポインタ型、手続き型、バリアント型

932 :デフォルトの名無しさん:03/07/21 18:41
>>931
無駄に水増ししてるな・・・

933 :デフォルトの名無しさん:03/07/21 18:53
構造化型は配列、集合、レコード、オブジェクト型の総称じゃなかったか
順序型も整数、文字、論理型、列挙型、部分範囲型の総称だろう…

934 :デフォルトの名無しさん:03/07/21 18:57
普通は整数と論理と文字列しかつかわん

935 :デフォルトの名無しさん:03/07/21 18:57
>>934
クラスも構造体もポインタも使わんと。それで何が出来るよ?

936 :デフォルトの名無しさん:03/07/21 20:31
クラスも構造体もポインタも飾りですよ。
お(ry

937 :デフォルトの名無しさん:03/07/21 21:52
バリアント一本で行けよ

938 :デフォルトの名無しさん:03/07/21 21:57
if や for だけのプログラミング

939 :デフォルトの名無しさん:03/07/21 22:40
Hello Worldだけのプログラミング

940 :デフォルトの名無しさん:03/07/21 22:55
漢は黙って Variant だけで作る

941 :デフォルトの名無しさん:03/07/21 23:14
常にバリアントユニット削除

942 :デフォルトの名無しさん:03/07/21 23:58
バリアントナイフ二刀流最強

943 :デフォルトの名無しさん:03/07/22 00:04
バリアン リサイタル。
「ぼえ〜〜〜〜」

944 :デフォルトの名無しさん:03/07/22 00:05
もうバリアント話は飽きた。。。

945 :デフォルトの名無しさん:03/07/22 00:08
サイコアーマー ゴーバリアン

946 :デフォルトの名無しさん:03/07/22 00:11
バタリアン

947 :韓国:03/07/22 00:17
バーリアン バーリアン バーラーリーヨー♪

948 :デフォルトの名無しさん:03/07/22 00:46
バーバリアンッ!!

949 :デフォルトの名無しさん:03/07/22 01:07
以降1000までバリアントスレ

950 :デフォルトの名無しさん:03/07/22 01:20
プロシジャー ボタン1クリック(Tオブジェクトセンダー)
始まり
フォーム1.ボタン1.キャプチョン := 'このぼたんをおすとPCが爆発します';
終り。

951 :デフォルトの名無しさん:03/07/22 01:21
デルファイでMidiとかWaveサウンド鳴らす方法教えてください

952 :一休:03/07/22 01:24
ポク… ポク… ポク… チーン!
>>951
まずは屏風からMidiとかWaveを出してください。

953 :デフォルトの名無しさん:03/07/22 01:37
#include <unit1.pas>
Integer main(void){
begin
Writeln("Hello world!!");
end.
}

954 :デフォルトの名無しさん:03/07/22 01:37
Pascalっていつごろからできたのん?

955 :デフォルトの名無しさん:03/07/22 01:39
俺が、15年程前に某メーカーで pascal, fortran コンパイラ作った時には既にあったね

956 :デフォルトの名無しさん:03/07/22 01:46
>>954
たぶん、日本でパソコンってものが売られた時には既にあった
そういえば、かつてMSもコンパイラを出してたらしいな

957 :デフォルトの名無しさん:03/07/22 01:47
もちろんTK-80で動いたとかそういうんじゃなくてアメリカでは既にあったってことね

958 :デフォルトの名無しさん:03/07/22 01:54
オレが「ぴゅう太」でブイブイ言わせてた頃にはもうあったな。

959 :デフォルトの名無しさん:03/07/22 02:03
コンソールアプリケーションってなぁに?

960 :コンドールマン:03/07/22 02:11
コンドールマン

961 :デフォルトの名無しさん:03/07/22 02:11
>>959
コンソールで動くアプリケーション

962 :デフォルトの名無しさん:03/07/22 02:13
PASCALはコンピュータ史上発の汎用高級言語ですよ

963 :デフォルトの名無しさん:03/07/22 02:17
>>962
マジレスしていい?

964 :デフォルトの名無しさん:03/07/22 02:20
>>963
щ(゚д゚щ)カモーン

965 :デフォルトの名無しさん:03/07/22 02:20
予想:
「またageちゃったなんたら」と続ける気だな?貴様…。

966 :デフォルトの名無しさん:03/07/22 02:21
史上初の言語はC言語だよ
エニアックの時代からある

967 :デフォルトの名無しさん:03/07/22 02:22
>>966
B言語の立場はどうなる?

968 :デフォルトの名無しさん:03/07/22 02:29
アセンブラは?

969 :デフォルトの名無しさん:03/07/22 02:29
Cは歴史からみればかなり後期なんだが

つーかUNIX登場後の話じゃーん

970 :デフォルトの名無しさん:03/07/22 02:30
もう釣られてる香具師ばっかり

971 :デフォルトの名無しさん:03/07/22 02:31
エニャックが世界初だと思ってていいのは小学生までだよねー( ´,_ゝ`)プッ

972 :デフォルトの名無しさん:03/07/22 02:34
962を上級釣り氏として認定しますた!


973 :デフォルトの名無しさん:03/07/22 02:51
ノイマンコンピュータ

974 :デフォルトの名無しさん:03/07/22 02:57
PASCAL以前はCOBOLしかなかった
ハッカーはアセンブリではなく16進数で語り合っていた
そして口笛を吹けばお金をいれなくても電話が通じた

オレがあこがれていたのはそんな時代なんだよ!!

975 :デフォルトの名無しさん:03/07/22 03:30
UTF8Nを判別する方法教えて

976 :ネタスレになりましたか!?:03/07/22 03:54
>>974
インベーダーのコイン投入口にガスコンロの着火部分でカチャカチャやって
クレジット増やしてなさい!

977 :デフォルトの名無しさん:03/07/22 05:35
ある処理中に、マウスホイールの回転を無効にすることはできますか?

978 :デフォルトの名無しさん:03/07/22 08:23
>>977
操作されちゃ困るコントロールを無効化しとけばいいんじゃないの。

979 :デフォルトの名無しさん:03/07/22 08:50
>>977
procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState;
       WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
 if ある処理中 then
  Handled := True;
end;

980 :デフォルトの名無しさん:03/07/22 09:41
>>951
MediaPlayerのコンポーネントがパレットのどこかにあるから、それをフォームに貼り付けなさい

981 :デフォルトの名無しさん:03/07/22 09:46
次スレ立てます

982 :デフォルトの名無しさん:03/07/22 09:48
くだすれDelphi(超初心者向け) Part4
http://pc2.2ch.net/test/read.cgi/tech/1058834815/

983 :スレ埋め:03/07/23 00:23
くっちぶえふーいーてー あっきちへーいったー
しらないーひとは もーいないー
みんななかまだ ともだちなーんーだー♪

984 :デフォルトの名無しさん:03/07/23 01:04
スレ埋めしないの?

985 :デフォルトの名無しさん:03/07/23 04:28
D

986 :デフォルトの名無しさん:03/07/23 05:08
>>984
意味もなく2ちゃんねるの鯖容量は無限ではありません
節約するためにも、このまま移行してください

987 :デフォルトの名無しさん:03/07/23 05:08
書き直したら文がおかしくなっちまった。。

988 :デフォルトの名無しさん:03/07/23 08:47
さすが板とスレが違うと言う事も違うな。
普通ならこう

      \∧_ヘ     ,,、,、,,,
 ,,、,、,,, / \〇ノゝ∩               ,,、,、,,,           ,,、,、,,,
    /三√ ゚Д゚) /        ,,、,、,,,              ,,、,、,,,
     /三/| ゚U゚|\      ,,、,、,,,                       ,,、,、,,,
 ,,、,、,,, U (:::::::::::)  ,,、,、,,,          
      //三/|三|\     ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ∪  ∪       (    )    (     )   (    )    )
 ,,、,、,,,       ,,、,、,,,  ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ,,、,、,,,       (    )    (    )    (    )    (    )

989 :デフォルトの名無しさん:03/07/23 13:10
最近はage荒らし対策と速やかなDAT落ちを目指して
埋め立てるのが流行なのにな

990 :デフォルトの名無しさん:03/07/23 13:54
>>983
知らない子はもういない、みんな仲間だ仲良しなんだ。

991 :デフォルトの名無しさん:03/07/23 13:59
>埋め立てるのが流行
厨房だけな。

処理したいならやれば?応援するよ(ヮ

992 :デフォルトの名無しさん:03/07/23 14:05
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

993 :デフォルトの名無しさん:03/07/23 14:06
次スレ

くだすれDelphi(超初心者向け) Part4
http://pc2.2ch.net/test/read.cgi/tech/1055212786/l50

994 :デフォルトの名無しさん:03/07/23 14:09
千をとるのは俺様〜

995 :デフォルトの名無しさん:03/07/23 14:11
意外と進まないな

996 :デフォルトの名無しさん:03/07/23 14:14
>>991
まわりをよくみてみろよ
それに2ちゃんのHDDの容量が足りないなんて聞いたことがない


997 :デフォルトの名無しさん:03/07/23 14:16
くだすれDelphi(超初心者向け) Part4
http://pc2.2ch.net/test/read.cgi/tech/1058834815/l50

998 :デフォルトの名無しさん:03/07/23 14:17
>>997はニセスレ。
ウザイ。

999 :デフォルトの名無しさん:03/07/23 14:17


1000 :デフォルトの名無しさん:03/07/23 14:17
そろそろか?

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

232 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)