くだすれDelphi(超初心者)その27
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2005/09/13(火) 14:40:39他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
Delphi使いが優しくコメントを返しますが、
お礼はDelphiの布教と初心者の救済をお願いします。
<前スレ>
くだすれDelphi(超初心者用)その26
http://pc8.2ch.net/test/read.cgi/tech/1121249711/
<雑談・討論などはこちらへ>
ミ,,゚Д゚彡フサギコのフサフサDelphi談話室その25
http://pc8.2ch.net/test/read.cgi/tech/1125304359/
<その他>
Borland Home Page
http://www.borland.co.jp/
DelWiki (無料版Delphiの入手方法など)
http://onigiri.s3.xrea.com:8080/delphi/
0002デフォルトの名無しさん
2005/09/13(火) 14:41:2325 http://pc8.2ch.net/test/read.cgi/tech/1119008091/
24 ttp://pc8.2ch.net/test/read.cgi/tech/1115581376/
23 ttp://pc8.2ch.net/test/read.cgi/tech/1110470895/
22 ttp://pc5.2ch.net/test/read.cgi/tech/1107332482/
21 ttp://pc5.2ch.net/test/read.cgi/tech/1104511938/
20 ttp://pc5.2ch.net/test/read.cgi/tech/1101530485/
19 ttp://pc5.2ch.net/test/read.cgi/tech/1097454588/
18 ttp://pc5.2ch.net/test/read.cgi/tech/1093996761/
17 ttp://pc5.2ch.net/test/read.cgi/tech/1091671391/
16 ttp://pc5.2ch.net/test/read.cgi/tech/1089779142/
15 ttp://pc5.2ch.net/test/read.cgi/tech/1087823906/
14 ttp://pc5.2ch.net/test/read.cgi/tech/1085239007/
13 ttp://pc5.2ch.net/test/read.cgi/tech/1081003641/
12 ttp://pc5.2ch.net/test/read.cgi/tech/1076610073/
11 ttp://pc5.2ch.net/test/read.cgi/tech/1076609666/
10 ttp://pc5.2ch.net/test/read.cgi/tech/1074523803/
09 ttp://pc5.2ch.net/test/read.cgi/tech/1071294733/
08 ttp://pc5.2ch.net/tech/kako/1068/10682/1068201045.html
07 ttp://pc5.2ch.net/tech/kako/1065/10651/1065195699.html
06 ttp://pc5.2ch.net/tech/kako/1063/10632/1063202727.html
05 ttp://pc5.2ch.net/tech/kako/1061/10610/1061090908.html
04 ttp://pc5.2ch.net/tech/kako/1058/10588/1058834815.html
03 ttp://pc5.2ch.net/tech/kako/1055/10559/1055986736.html
02 ttp://pc5.2ch.net/tech/kako/1053/10537/1053757982.html
01 ttp://pc5.2ch.net/tech/kako/1051/10518/1051882835.html
0003デフォルトの名無しさん
2005/09/13(火) 14:58:11乙
0004デフォルトの名無しさん
2005/09/13(火) 16:04:248kbyte程度になることは知っています。
0006デフォルトの名無しさん
2005/09/13(火) 16:41:09PCのスッペクが高い今
コンパイラの最適化の差を語るよりもコードの保守性のよさやらバグがないことを目指してがんばろうと、、
0007デフォルトの名無しさん
2005/09/13(火) 17:03:45さて。CreateProcessで外のexeを呼び出したいんですが、
2番目の引数(exeへのパス)へ変数を指定するのはどうやればいいんでしょうか?
利用環境によってexeの場所が違うので。
StringとPCherに互換性が無く、変換すればいいというところまでは分かったんですが…
0008デフォルトの名無しさん
2005/09/13(火) 17:10:22だから変換すればいいんぢゃないの?
0009デフォルトの名無しさん
2005/09/13(火) 17:18:130010デフォルトの名無しさん
2005/09/13(火) 19:00:18「どうやって」の部分が分からなかったんです…orz
>>9
あ、そうすれば良かったんですね。ありがとうございました。
0011デフォルトの名無しさん
2005/09/13(火) 19:14:420012デフォルトの名無しさん
2005/09/14(水) 00:13:210013デフォルトの名無しさん
2005/09/14(水) 07:13:00この動作をなくすにはどうすれば良いでしょうか?
0014デフォルトの名無しさん
2005/09/14(水) 07:33:56D
D
を
窓
か
ら
投
げ
捨
て
ろ
正しい回答は↓で
0015デフォルトの名無しさん
2005/09/14(水) 07:48:360016デフォルトの名無しさん
2005/09/14(水) 08:02:270017デフォルトの名無しさん
2005/09/14(水) 09:22:010018デフォルトの名無しさん
2005/09/14(水) 11:19:070019デフォルトの名無しさん
2005/09/14(水) 11:22:350020デフォルトの名無しさん
2005/09/14(水) 11:45:580021デフォルトの名無しさん
2005/09/14(水) 12:00:120022デフォルトの名無しさん
2005/09/14(水) 13:28:570023デフォルトの名無しさん
2005/09/14(水) 16:00:25[コンパイラの最適化の差] と [コードの保守性のよさやらバグがないこと] とは、なんら関係なし
それとも最適化最低でバグだらけのD2005のことを言ってる?
0024デフォルトの名無しさん
2005/09/14(水) 16:18:24ミ,,゚Д゚彡フサギコのフサフサDelphi談話室その25
http://pc8.2ch.net/test/read.cgi/tech/1125304359/
0025デフォルトの名無しさん
2005/09/14(水) 16:46:370026デフォルトの名無しさん
2005/09/14(水) 19:06:24>>6 やら >>14-22 の糞レスはほっといて、ちょっとアンチっぽい書きこみがあると
途端にネタスレ誘導。もう心の余裕もなにもないんだな・・・あわれ
0027デフォルトの名無しさん
2005/09/14(水) 19:14:260028デフォルトの名無しさん
2005/09/14(水) 19:16:390029デフォルトの名無しさん
2005/09/14(水) 19:24:500030デフォルトの名無しさん
2005/09/14(水) 19:29:58ああいう奴がダメにしている
Delphiでカーネル書くって、しかも自称組込みやってる人って来た
痛すぎ
簡単に作るための言語って大体の人は認めてるだろ
それで十分
0031デフォルトの名無しさん
2005/09/14(水) 19:32:19これ認めない。
正確には
簡単に作ることもできる言語、じゃなくて開発環境。
でももうだめそう。最近のバージョンひどすぎ
0032デフォルトの名無しさん
2005/09/14(水) 19:33:150033デフォルトの名無しさん
2005/09/14(水) 19:34:370034デフォルトの名無しさん
2005/09/14(水) 19:35:38トライアルDLして起動してみ。あきれるから。さらに使い込むと目もくらむ。
0035デフォルトの名無しさん
2005/09/14(水) 19:41:400036デフォルトの名無しさん
2005/09/14(水) 19:53:200037デフォルトの名無しさん
2005/09/14(水) 19:54:210038デフォルトの名無しさん
2005/09/14(水) 19:58:390039デフォルトの名無しさん
2005/09/14(水) 19:59:30ミ,,゚Д゚彡フサギコのフサフサDelphi談話室その25
http://pc8.2ch.net/test/read.cgi/tech/1125304359/
0040デフォルトの名無しさん
2005/09/14(水) 20:01:20馬鹿じゃね
0041デフォルトの名無しさん
2005/09/14(水) 20:04:490042デフォルトの名無しさん
2005/09/14(水) 20:05:510043デフォルトの名無しさん
2005/09/14(水) 22:16:550044デフォルトの名無しさん
2005/09/14(水) 22:35:156なら、そうダメでもないから、そのままでいいんでない?
自分は2005も買ったけど、結局仕事で使ってるのは6
0045デフォルトの名無しさん
2005/09/15(木) 02:24:10スレ違い甚だしい。お前らは自分が良いと思う言語と開発環境使ってればいいだろ。
議論したければ専用スレ使え。
0046デフォルトの名無しさん
2005/09/15(木) 02:39:11スレを伸ばしてやってるんだ、光栄に思え。
0047デフォルトの名無しさん
2005/09/15(木) 02:41:49俺はユーザでいってるよ?
上読んでても、前スレの終り見ててもそうだったけど
終りには一匹変なのが紛れ込んでたけど
0048デフォルトの名無しさん
2005/09/15(木) 02:47:44書いて無いから理解できないのかなとも思った。
0049デフォルトの名無しさん
2005/09/15(木) 02:53:440050デフォルトの名無しさん
2005/09/15(木) 03:01:03>>49
0051デフォルトの名無しさん
2005/09/15(木) 03:11:43俺がユーザに言ってるんじゃなくてアンチに言ってる事くらい分かってくれ。
0052デフォルトの名無しさん
2005/09/15(木) 03:20:02アンチなんていないことをいってることくらい分かってくれ。
0053デフォルトの名無しさん
2005/09/15(木) 03:23:08うるさい黙れ!
0054デフォルトの名無しさん
2005/09/15(木) 03:25:31うるさい黙れ!
0055デフォルトの名無しさん
2005/09/15(木) 07:54:010056デフォルトの名無しさん
2005/09/15(木) 08:21:070057デフォルトの名無しさん
2005/09/16(金) 17:07:30CloseメソッドやSendMessageでWM_Closeを送っても一瞬画面が表示されてしまいます。
ズバッと終了させる方法ってないですか?
0058デフォルトの名無しさん
2005/09/16(金) 17:20:480059デフォルトの名無しさん
2005/09/16(金) 17:27:120060カラス
2005/09/16(金) 17:46:300061デフォルトの名無しさん
2005/09/16(金) 18:17:570062デフォルトの名無しさん
2005/09/17(土) 12:38:26あるRadioButtonCheckedプロパティがFalseのときに、
あるコンポーネントのEnabledプロパティをFalseにするようにするには、
どうすればよいですか?
○←False
・−−−−− ←ここを無効にしたい
・−−−−− ←ここを無効にしたい
●←True
・−−−−−
・−−−−−
0063デフォルトの名無しさん
2005/09/17(土) 12:59:320064デフォルトの名無しさん
2005/09/17(土) 13:04:13onClickかな
0065デフォルトの名無しさん
2005/09/17(土) 13:04:32勉強不足ですみません。
「ラジオボタン Onchange Delphi」などでググってもなかなか見つからないので
困っています。
0066デフォルトの名無しさん
2005/09/17(土) 13:05:33OnClickでいけました。
006762
2005/09/17(土) 13:26:52あるラジオボタンにチェックが入っているときに、複数のコンポーネントを
Enabled に切り替えるプロシージャを作ろうと思っています。
この、複数のコンポーネントのプロパティを一度に変更するにはどうすればよいですか?
いま、
procedure TForm1.RadioButton1Click(Sender: TObject);
begin
Label1.Enabled := True;
Label2.Enabled := True;
Edit1.Enabled := True;
Edit2.Enabled := True;
end;
のように書いて動いてますが、数が多くなると大変です。よりスマートに書く方法はありますか?
0068デフォルトの名無しさん
2005/09/17(土) 13:33:49FindComponentで探したら行けないかな?
0069デフォルトの名無しさん
2005/09/17(土) 14:00:08for i:= 0 to ComponentCount - 1 do
begin
if Components[i] is TLabel then
(Components[i] as TLabel).Enabled:= True;
end;
0070デフォルトの名無しさん
2005/09/17(土) 14:25:230071デフォルトの名無しさん
2005/09/17(土) 14:36:54var
i : integer;
begin
if TCheckBox(sender).Checked = true then
begin
for i:=1 to 100 do
begin
try
TButton(FindComponent('Button'+IntToStr(i))).Enabled := false;
except
break;
end;
end;
end else begin
for i:= 1 to 100 do
begin
try
TButton(FindComponent('Button'+IntToStr(i))).Enabled := true;
except
break;
end;
end;
end;
end;
美しくないねごめん。
0072デフォルトの名無しさん
2005/09/17(土) 14:44:52無駄杉
その記述なら当てはめる値は変数にする方がスマート
var
Value: Boolean;
begin
Value:= not (Sender as TCheckBox).Checked;
TButton(…).Enabled:= Value;
end;
0074デフォルトの名無しさん
2005/09/17(土) 18:05:35また、動的にFontDialogを使う事なくFont.Styleを変える事はできないでしょうか?
0075デフォルトの名無しさん
2005/09/17(土) 18:53:17単なる集合型なんで保存はそのままファイルにでも書き出せばいいし、
変更は普通に代入出来るよ。
fs.Write(Font.Style, SizeOf(Font.Style));
Font.Style := [fsBold];
0076デフォルトの名無しさん
2005/09/17(土) 18:54:21ヘルプより
type
TFontStyle = (fsBold, fsItalic, fsUnderline, fsStrikeOut);
TFontStyles = set of TFontStyle;
要素が最大5つしかない集合型は byte と互換
保存は byte として数値で。復帰は TFontStyles にキャストするだけ。
こんな感じ
var
fontstyles: byte;
procedure TForm1.Button1Click(Sender: TObject);
begin
Button1.Font.Style := [fsBold, fsUnderline];
fontstyles := byte(Button1.Font.Style);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Button2.Font.Style := TFontStyles(fontstyles);
end;
0077デフォルトの名無しさん
2005/09/17(土) 18:56:180078デフォルトの名無しさん
2005/09/17(土) 19:00:48わざわざbyteにキャストする意味が判らん。
var
fontstyles: TFontStyles;
でいいやん。
007974
2005/09/17(土) 19:18:53解決しました
0080デフォルトの名無しさん
2005/09/17(土) 20:20:45ググったらたくさん出過ぎてどれをみたらいいのかorz..
0081デフォルトの名無しさん
2005/09/17(土) 20:37:49googleが一番
0082デフォルトの名無しさん
2005/09/17(土) 21:52:23ini とかレジストリとかに保存するとき便利でしょ
0083デフォルトの名無しさん
2005/09/17(土) 21:53:36Seventh Delphi がオススメです。
0084デフォルトの名無しさん
2005/09/17(土) 22:32:17うーん。列挙型だと
GetEnumName(TypeInfo(TFontStyle), ord(typ) );
とやれば簡単なんだけどな。 1行で保存となると、そうなるかな
0085デフォルトの名無しさん
2005/09/17(土) 23:19:23やり方知ってるに越したことはない
0086デフォルトの名無しさん
2005/09/18(日) 02:14:58データのIDをPointer型にキャストしてぶら下げるのと同じだね
0087デフォルトの名無しさん
2005/09/18(日) 06:53:32http://onigiri.s3.xrea.com:8080/delphi/index.php?cmd=read&page=%A5%EA%A5%F3%A5%AF%2F%A4%BD%A4%CE%A3%B1#content_1_6
0089デフォルトの名無しさん
2005/09/18(日) 09:03:370090デフォルトの名無しさん
2005/09/18(日) 23:37:520091デフォルトの名無しさん
2005/09/19(月) 00:46:120092デフォルトの名無しさん
2005/09/19(月) 00:47:490093Delフサギコ ◆A6VzDeLphI
2005/09/19(月) 21:47:12ミ,,゚Д゚ミ,,・д・ミ ニャ-
ミ ミつ ミ,,,uu,,ミ〜
ミ ミ
∪''∪ 知ってたら教えてください
bsNoneでタイトルバーを消した状態で
自分で、タイトルバー
_______________
|■ [_][□][×] |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
を描きたいんですが
(理由はFormのボーダーを消したいから)
アイコンやバーのグラデーションや3つのボタンを
OSと同等に描画している
コード、誰か持ってたり
どっか乗ってたりしているのしりませんか?
なんか流用できたら楽してかっこいいUIになるかなー
とか、思ったりしてまして。
0094デフォルトの名無しさん
2005/09/19(月) 22:08:47このブラウザを標準のブラウザに設定するにはどうしたら良いでしょうか?
0095デフォルトの名無しさん
2005/09/19(月) 22:23:52htmlに関連付けすればいいんじゃない?
0096デフォルトの名無しさん
2005/09/20(火) 00:43:140097デフォルトの名無しさん
2005/09/20(火) 00:47:31あっちでフサが紹介してた
http://blog.livedoor.jp/junki560/archives/18042687.html
じゃダメなの? グラデーションは
http://blog.livedoor.jp/junki560/archives/18495762.html
で描く、と。
009894
2005/09/20(火) 03:06:14すいません
質問の仕方が悪かったです
htmlの関連付けをそのアプリケーション上で行いたいのですが、
どうしたら良いでしょう?
0099デフォルトの名無しさん
2005/09/20(火) 03:30:04"delphi 拡張子 関連付け"でググるとサンプルコードのページがたくさん表示されるわけだが。
自分で調べる気はないですか。そうですか。
0100Delフサギコ ◆A6VzDeLphI
2005/09/20(火) 03:40:09ミ,,゚Д゚ミ,,・д・ミ ニャ-
ミ ミつ ミ,,,uu,,ミ〜
ミ ミ
∪''∪ ぉぉを!
さんくす>>97さん、
ちょっと明日がんばてみようかな。
0101デフォルトの名無しさん
2005/09/20(火) 11:11:27下のようなコードを書きました。
Self.BorderIcons := Self.BorderIcons - [biSystemMenu];
try
なんたらかんたら〜
finally
Self.BorderIcons := Self.BorderIcons + [biSystemMenu];
end
一応、期待通りの動作はするのですがSelf.BorderIconsの所で
画面がちらつきます。これを防ぐ方法はないのでしょうか?教えてください。
0102デフォルトの名無しさん
2005/09/20(火) 12:44:01begin
EnableMenuItem(GetSystemMenu(Handle,false), SC_CLOSE, MF_BYCOMMAND or MF_DISABLED);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
EnableMenuItem(GetSystemMenu(Handle,false), SC_CLOSE, MF_BYCOMMAND or MF_ENABLED);
end;
0105デフォルトの名無しさん
2005/09/21(水) 16:20:06Delphiになれるため、コンポーネントをいろいろ貼り付けて練習しています。
いまDeerPark の設定ダイアログ( ttp://web.drive.ne.jp/1/soko/VIP03217.PNG )
をDelphiで模造してみようと思っているのですが、上のボタンのようなタブは、Win32-TTabControlで
再現できるものなのでしょうか?それとも、自力でこういうコンポーネントを作らないと無理なのでしょうか。
0106デフォルトの名無しさん
2005/09/21(水) 16:46:02これはXPスタイルなんで、.manifestファイルを同じDirectoryに置くか
リソースでXMLをかくかどっちか
Delphi7なら
C:\Program Files\Borland\Delphi7\Lib\WindowsXP.res
にあるけどD6はなかったと思うので、WindowsXP.resをどっかからもらうか
VC++などについてるリソースエディタで作ってから
{$R WindowsXP.res}とすれば良いと思います。
0107デフォルトの名無しさん
2005/09/21(水) 16:50:49仮にそれが「General」とか書いてあるボタンのことだとしたら、
それは自力で描写する必要があるな
0108デフォルトの名無しさん
2005/09/21(水) 17:42:34おっしゃる通り、「上のボタンのようなタブ」は General〜 以右のことです。
やはりこれは自力でやるしかないのですね。わかりました。
0109デフォルトの名無しさん
2005/09/22(木) 04:21:39某のQ&A位嫁馬鹿
http://www.borland.co.jp/qanda/delphi/d0009423.html
0110デフォルトの名無しさん
2005/09/22(木) 04:57:54HlinkNavigateStringを使い、
HlinkNavigateString(Nil,URL);
このようにしてブラウザにサイトを開かせているんですが、ブラウザを閉じる前に
アプリケーションにウィンドウのフォーカスを戻すと
EStackOverflowクラスの例外が発生してしまいます(ブラウザを閉じた後で発生したことはありません)。
ブラウザを閉じる前にアプリケーションにフォーカスを戻してもエラーが発生しないようにするには
どのようにしたらいいでしょうか?
0111デフォルトの名無しさん
2005/09/22(木) 07:19:070112デフォルトの名無しさん
2005/09/22(木) 07:35:10http://www.borland.co.jp/qanda/delphi/d0003105.html
0113110
2005/09/22(木) 08:03:25そのページは見ていましたが、ShellExecute関数は試していませんでした。
ShellExecuteにすることで、無事ブラウザから戻ってもエラーが出なくなりました。
有り難うございます。
0114デフォルトの名無しさん
2005/09/22(木) 08:12:55http://bonanzas.rinet.ru/
0115デフォルトの名無しさん
2005/09/22(木) 15:16:08誤爆?怖いから俺は踏まないでおくが
0116デフォルトの名無しさん
2005/09/22(木) 15:22:26とりあえずURLはKOLのサイトのようだが
0117デフォルトの名無しさん
2005/09/22(木) 15:22:39KOL(Key Objects Library)のサイトなのかな?
0118114
2005/09/22(木) 15:42:26ちなみに小さなexeを作りたいというのへのレスです。
0119デフォルトの名無しさん
2005/09/22(木) 18:45:39俺もそう思うけど
せめてBorlandのQ&A位は読んでから質問して欲しいよな。
いくらくだすれでもあまりにも幼稚な質問をするのは良くないと思う。
0120デフォルトの名無しさん
2005/09/22(木) 19:28:05せめてヘルプぐらい嫁、とか、MLの過去ログ嫁とか、どんどん拡大していくな、それだと。
くだすれに前提を求めるなよ。だからくだすれなんだから。
っていうか、BorlandのQ&A ってそんなにメジャーかなぁ・・・
0121デフォルトの名無しさん
2005/09/22(木) 19:34:380122デフォルトの名無しさん
2005/09/22(木) 19:35:400123デフォルトの名無しさん
2005/09/22(木) 23:47:39くだすれでそういう議論は不要
上級スレかフサスレでやってくれ
0124デフォルトの名無しさん
2005/09/23(金) 00:39:57>>119 に言ってやれ
0125デフォルトの名無しさん
2005/09/23(金) 00:44:170126デフォルトの名無しさん
2005/09/23(金) 00:49:33ニフティで同じようなことをしたから。ヘルプを見れば分かることなのに
探し方が下手だったり、思いこみで見つけ損ねたりしてたから。
時間がないときはほっておくけど。んで次回見たときに誰も答えてなければ
答える。そうしないと過去、俺に教えてくれた人が同じことしてくれたんだから
申し訳ない。
0127デフォルトの名無しさん
2005/09/23(金) 00:49:560128デフォルトの名無しさん
2005/09/23(金) 00:50:310129デフォルトの名無しさん
2005/09/23(金) 01:02:160130デフォルトの名無しさん
2005/09/23(金) 01:06:59みんな最初は初心者だったでしょ?
0131デフォルトの名無しさん
2005/09/23(金) 01:08:270132デフォルトの名無しさん
2005/09/23(金) 01:18:49「みんな最初は初心者」
↑これみると頭に来る。生ぬるいこと言ってんじゃねぇよハゲが。
ゆとり教育か?あん?100万回ヘルプ読んでこい。全部書いてある。
0133デフォルトの名無しさん
2005/09/23(金) 01:23:580134デフォルトの名無しさん
2005/09/23(金) 01:25:09みんな最初は初心者
みんな最初は初心者
みんな最初は初心者
みんな最初は初心者
みんな最初は初心者
どうぉ?
0135デフォルトの名無しさん
2005/09/23(金) 01:27:550136デフォルトの名無しさん
2005/09/23(金) 02:09:020137デフォルトの名無しさん
2005/09/23(金) 02:21:29IFよりも早く動かしていた記憶があって、ぐぐってるんですが
なかなか昔使っていたような論理計算式が出てきません。
ビット計算?ANDとかNOTを使っていたような?うまいことどんぴっしゃ!というような
が出てきません。
ヒントをもらえませんか?
0138デフォルトの名無しさん
2005/09/23(金) 02:27:58こういうのじゃないのか。
0139Delフサギコ ◆A6VzDeLphI
2005/09/23(金) 02:29:16ミ,,゚Д゚ミ,,・д・ミ ニャ-
ミ ミつ ミ,,,uu,,ミ〜
ミ ミ
∪''∪
>>120、>>126、>>130
激しく同意。
生ぬるいとか言ってるヤツ
2chくだすれの意味わかってんのか
MLに帰れゴルァ
とか言ってみたけど、
眠いから寝て土日は心を落ち着かせて
平和にいこー!
0140デフォルトの名無しさん
2005/09/23(金) 02:50:14あああ!ありがとうございます。その手のたぐいのTIPを
いくつか使用していたはずなんです。ごく当たり前に。
そういうTIPと「何故そうなのか」が集まったサイトないか探しています。
ベーマガやMSXファンなどの投稿雑誌でMSXのプログラムがあったころに本をとっておけばよかった。
そうやって昔は先輩たちのショートプログラムから覚えていったんだから。
当方、Delphiを始めたばかりの元MSXユーザーですわ。
0141デフォルトの名無しさん
2005/09/23(金) 12:09:44Delphi言語は非常に型にうるさい。
また演算子の機能はオペランドの型によって変わってくるので
C言語風のやり方はあまりおすすめできない。
なおDelは順序型(整数型、論理型、部分範囲型他)だったら
何でも配列の添字に出来るので、こんな事が出来る。
//上と下の関数は等価。でも速度は下の方が速い。
function BoolToStrA(value:Boolean):String;
begin
if value=True then
begin
Result := 'True';
end
else
begin
Result := 'False';
end;
end;
function BoolToStrB(value:Boolean):String;
const
BOOLSTRINGS:array[boolean] of String = ('False','True');
begin
Result := BOOLSTRINGS[value];
end;
理論的には、配列の型を関数ポインタにすれば
if文を使わずに処理を切り替えることも可能。
0142デフォルトの名無しさん
2005/09/23(金) 12:16:24BCB6のクイックスタートはそこキチンと直ってるのにねぇ
0143デフォルトの名無しさん
2005/09/24(土) 12:32:41ExtractFilePath(Application.ExeName);
ExtractFilePath(ParamStr[0]);
などとやると思いますが、この TApplication.ExeName や ParamStr[0]は
D:\MyTools\Hoge.exeをD:\MYTOOLS\HOGE.EXE
と大文字化して返してしまいます。元のファイル名のまま得る方法はないでしょうか?
0144デフォルトの名無しさん
2005/09/24(土) 12:50:220145デフォルトの名無しさん
2005/09/24(土) 13:13:42環境は以下の通り。
WinXP + Del5Pro, Del6Personal
ファイルシステムは共にNTFS
ファイルシステムの関係?
0146デフォルトの名無しさん
2005/09/24(土) 13:17:350147デフォルトの名無しさん
2005/09/24(土) 13:38:540148デフォルトの名無しさん
2005/09/24(土) 13:40:120149デフォルトの名無しさん
2005/09/24(土) 13:42:52はい、次の方どうぞ
0150アーツ勝ってばんざい!
2005/09/24(土) 14:33:49サンプルをつけた詳しいレスありがとうございます。遅くなってすいません
修学中ですが、上のサンプルリストは理解できましたが(当たり前の事ながら)
下の方が浅学のため、うっすらとしか分かりませんでしたが、もうちょっと
勉強してきます。配列に入れて摂取を番目にて得るということなんすね?
何故か、MIDを利用して文字を切り抜いたことをやってたなーとか
思い出しました。関係ないか。
ありがとうございます。
0151デフォルトの名無しさん
2005/09/24(土) 15:03:140152デフォルトの名無しさん
2005/09/24(土) 15:05:380153デフォルトの名無しさん
2005/09/24(土) 15:23:040154デフォルトの名無しさん
2005/09/24(土) 15:31:300155デフォルトの名無しさん
2005/09/24(土) 16:42:32あるフォント名に指定した文字コードが登録されているかどうかを判断するには
どうすればよいのでしょうか
0156デフォルトの名無しさん
2005/09/24(土) 16:46:032000やXPはファイルパスをそのまま返してくれるけど、95や98とかはExtractFilePathを
大文字で返してくるっぽい。
どうもファイルシステムがNTFSかそれ以前かによって違うような気がする。
まあ全部のバージョンのWindowsを試したわけじゃないのでよく分からんが。
ExtractFilePathをファイルが存在するかどうかの判別に使ってるんなら、
返ってきたファイルパスと存在するかどうか判別したいファイルパスを
一度UpperCaseかLowerCaseで大文字か小文字に揃えてから処理すると、
ファイルシステムによるによるファイルパスの扱いの違いを回避してくれるのでお勧め。
0157デフォルトの名無しさん
2005/09/24(土) 16:50:08ほい。「Delphi ファイル名 大文字」でぐぐったら一発目にあったやつ。
http://alicecafe.jp/d_web/blog/archives/000379.html
「でるふぃ」・・・
0158デフォルトの名無しさん
2005/09/24(土) 17:05:55そこの人APIのヘルプ(つーかMSDN)を読まないのだろか?
一番単純な部類のAPIなんだから試してみるといいのにね
0159デフォルトの名無しさん
2005/09/24(土) 17:30:580160デフォルトの名無しさん
2005/09/24(土) 17:44:50難しい事やろうとしてるんだね。
GDIフォントなら、その特定のフォントでビットマップに描画してみて、デフォルト文字になるかどうか
である程度いけそうだけど、プリンタフォントだとそういうわけにいかんしね
0161デフォルトの名無しさん
2005/09/25(日) 10:20:23ファイルシステムは関係ありませんよ。
"COMMAND.COM"というファイルがあるとして拡張子を表示する設定にしている場合
NT系のWin上ではFAT/FAT32/NTFSに関係なく"COMMAND.COM"と表示されますが
9x系のWin上ではFAT/FAT32に関係なく"Command.com"と表示されます。
表示が異なるだけで実際のファイル名は"COMMAND.COM"なので
>>143が元のファイル名のまま得ていないと思い込んでいるだけだと思われます。
(でも>>143の方法では9x系Winの場合短いパスになってしまいますけど)
表示されているファイル名を得たい場合や
長いファイル名や短いファイル名や長いパスや短いパスを得たい場合は
Delphi-ML[78013]の方法(手直しは必要です)で良いと思います。
0162デフォルトの名無しさん
2005/09/25(日) 11:02:51ExtractFilePathは大文字小文字の操作はしないよ。
文字列を受け取って最後の"\"以降を取った文字列を返すだけだから。
0163デフォルトの名無しさん
2005/09/25(日) 11:20:52ExtractFilePathが大文字小文字の操作するかどうかなんて誰も話していないが?
0164デフォルトの名無しさん
2005/09/25(日) 11:40:29>2000やXPはファイルパスをそのまま返してくれるけど、95や98とかはExtractFilePathを
>大文字で返してくるっぽい。
>>156はそのまま返さないで大文字に変換して返すって思っているんじゃないか?
って言うか>>156はツッコミ所が多すぎてネタかと思ったよ。
0165デフォルトの名無しさん
2005/09/25(日) 12:11:30初心者の質問に初心者が答える>全体のレベルが下がる
>>156は自分をどう思っているのだろうか。
0166デフォルトの名無しさん
2005/09/25(日) 13:32:580167デフォルトの名無しさん
2005/09/25(日) 14:11:000168デフォルトの名無しさん
2005/09/25(日) 14:29:470169デフォルトの名無しさん
2005/09/25(日) 15:17:130170156
2005/09/25(日) 15:48:14すみません、自分が知識不足だったようです。
以前、存在するかどうか調べたいパスと、ExtractFilePathで取得したパスをつき合わせて
パスが存在するかどうか判定する関数を作ったんですが、どうも9x系とNT系で動作が違うんで
調べてみたら>>161のカキコでおっしゃられてる通り、9x系は大文字、NT系は先頭一文字が
大文字で、後は小文字でした。
それで「この違いはファイルシステムの違いなんだな」と一人合点してしまい、ともかくOSの
バージョンの違いを吸収して正常に動作させるためには、双方のパスの文字列を
大文字か小文字に一度変換してから処理したほうが楽だな、と思って関数を書き直した
経緯があったもので、もしかしたら143もそういう事で悩んでるのかな、と思い、
つい156に
>ExtractFilePathをファイルが存在するかどうかの判別に使ってるんなら、
>返ってきたファイルパスと存在するかどうか判別したいファイルパスを
>一度UpperCaseかLowerCaseで大文字か小文字に揃えてから処理すると、
>ファイルシステムによるによるファイルパスの扱いの違いを回避してくれるのでお勧め。
とカキコしてしまいました。
元々知識不足の上に、聞かれてもない事をカキコする必要は無かった訳で、自分のカキコで
荒れる原因になってしまった事をお詫びします。申し訳ございませんでした。
0171デフォルトの名無しさん
2005/09/25(日) 16:09:220172デフォルトの名無しさん
2005/09/25(日) 16:39:12パスが存在するかどうか判定するのに大文字小文字は関係無いんじゃないかな?
例えば(試して無いけど)
if DirectoryExists('C:\WiNdOwS') then ShowMessage('あるよ!');
とかでも通ると思う。
いや・・・もっと難しい事がしたいんですよね・・・
0173デフォルトの名無しさん
2005/09/25(日) 17:24:020174デフォルトの名無しさん
2005/09/25(日) 18:18:12else if bar then a := 1
else continue
if a = 0 then ...
でaが初期化されない可能性とか言われるんだけどどうやって黙らせてる?
0175デフォルトの名無しさん
2005/09/25(日) 18:28:280176デフォルトの名無しさん
2005/09/25(日) 18:32:51・あらかじめaを何らかの値に初期化しておく
・どの条件分岐でもaに値が入るようにする
でいいんじゃないか?
黙らせるだけならPCを窓から(ry
0177156
2005/09/25(日) 18:51:17いや、あまり難しいことをしてるんじゃないんですが・・・。例えばFormCreateで
//変数にパスを代入
AppPath := ExtractFilePath(Application.Exename);
DataPath := AppPath + 'Data';
SettingPath := AppPath + 'Setting';
//保存用フォルダの作成
Attrs := FileGetAttr(DataPath);
if Attrs and faHidden <> 0 then
CreateDir(DataPath);
:
変数に代入したパスを使ってフォルダを作成し、この時作られたサブフォルダ
\Dataと\Settingより前のフォルダにはセーブダイアログからは保存出来ないような
処理を作りたくて、セーブダイアログ終了以降に実行される関数に、
//注:SFilenameにはセーブダイアログのFilenameが代入されている
//\Dataまたは\Settingより前のフォルダにはセーブしない
if (Pos(DataPath, SFilename) <> 1)
and (Pos(SettingPath, SFilename) <> 1) then
ShowMessage('このフォルダにはセーブ出来ません');
:
というような処理を書いたんですが、これだと仮に正しいサブフォルダ(例えばC:HOGEHOGE\Data)を
セーブ時に選んだとしても、9x系ではセーブダイアログのFilenameは(C:HOGEHOGE\DATA)という
文字列になってるので、まともに動作しないんです。そこで
if (Pos(AnsiUpperCase(DataPath), AnsiUpperCase(SFilename)) <> 1)
and (Pos(AnsiUpperCase(SettingPath), AnsiUpperCase(SFilename)) <> 1) then
ShowMessage('このフォルダにはセーブ出来ません');
みたいな処理に書き直した経緯があったんですが、見返すとパスが存在するかどうかの
判定とは全然関係ないような・・・勘違いしてました。ごめんなさい、もう消えます。
0178デフォルトの名無しさん
2005/09/25(日) 19:09:580179デフォルトの名無しさん
2005/09/25(日) 19:52:050180デフォルトの名無しさん
2005/09/26(月) 09:18:47配列のポインタをWideStringに代入したのですが
いくつか表示されない文字があります。
なにが原因でしょうか?
0181デフォルトの名無しさん
2005/09/26(月) 09:23:360182デフォルトの名無しさん
2005/09/26(月) 09:39:450183デフォルトの名無しさん
2005/09/26(月) 09:44:29少しは自分で考えろよ能無し。
0185デフォルトの名無しさん
2005/09/26(月) 10:03:16なぜ前でなきゃいけないと思うの?
0186デフォルトの名無しさん
2005/09/26(月) 10:26:00http://sakots.pekori.jp/cgi/sn/src/up34722.txt
どうよ。
0187180
2005/09/26(月) 10:27:56よくわかりませんが
下記のコードでバイト配列に入っているデータを
unicodeに変換すると特殊記号などが'?'で表示されてしまいます
var
WsTemp: WideString;
bTempBuff: array of Byte;
begin
WsTemp := PWideChar(@bTempBuff);
end;
0188デフォルトの名無しさん
2005/09/26(月) 10:30:34どこへ表示させてるかによる、と思うにゃ
0189デフォルトの名無しさん
2005/09/26(月) 10:31:55そこまで書いてなぜ問題になるの文字コードをひとつも書かないのかと
0190デフォルトの名無しさん
2005/09/26(月) 10:33:41俺と似たようなコード書くなキモイ氏ね^^^
0191186
2005/09/26(月) 10:34:07の方がいいかも
0193デフォルトの名無しさん
2005/09/26(月) 10:35:47俺はa, b, c, d : Integerがip : array [0..3] of Integerになっただけっぽい。。きもい。。
0194デフォルトの名無しさん
2005/09/26(月) 11:53:20case Random(7) of
0: b := 11;
1: b := 13;
2: b := Random(5)+15;
3: b := Random(4)+23;
4: b := Random(4)+32;
5: b := 48;
6: b := Random(48)+208;
end;
0195デフォルトの名無しさん
2005/09/26(月) 14:31:260196デフォルトの名無しさん
2005/09/26(月) 15:12:50それだったら
case Random(64) of
0 : b := 11;
1 : b := 13;
2.. 6: b := Random(5)+15;
7..10: b := Random(4)+23;
11..14: b := Random(4)+32;
15 : b := 48;
16..63: b := Random(48)+208;
end;
加奈
0197デフォルトの名無しさん
2005/09/26(月) 15:54:17それにしてもIPアドレスをランダムに発生させる用途が怪しいな
0198デフォルトの名無しさん
2005/09/26(月) 16:22:11dddにあたる部分が0ってアリなの?
Random()だと0入るっしょ…
勘違いだったらスマソ
0199デフォルトの名無しさん
2005/09/26(月) 16:48:26Cのint, unsigned long, long, doubleを使ったコードをベタ移植した場合、
演算結果が異なるようなケースがあるのでしょうか?
そのあたりについてのポインタがあったら教えてください。
0200デフォルトの名無しさん
2005/09/26(月) 17:13:48C(++)のdoubleと同じ8バイトのDouble型の上に
10バイトのExtended型があるというだけのことなので
C(++)⇒Delphiは問題ないかと
0201デフォルトの名無しさん
2005/09/26(月) 17:26:410202デフォルトの名無しさん
2005/09/26(月) 17:32:14Extendedは80bit
0203デフォルトの名無しさん
2005/09/26(月) 17:38:51モードつうぐらいだから丸めモードとかだべか。
0204デフォルトの名無しさん
2005/09/26(月) 17:45:08cw:=$133f;
asm
FNCLEX
FLDCW cw;
end;
のこと?
0205デフォルトの名無しさん
2005/09/26(月) 19:35:39接続できるのでしょうか?
購入前なので試すことができません。
だれか繋いでシステム作ってる方はいないでしょうか?
0206デフォルトの名無しさん
2005/09/26(月) 19:56:45一応可能。もちろん全機能使えない。(自分でOCI等で接続するコード書くなら別)
0207デフォルトの名無しさん
2005/09/26(月) 20:05:34全機能っていうのは、Oracleのストアドとかが、ぜんぜん使えないことでしょうか?
Oracleも初心者なもので、詳しくないのですが、
ただDBを繋ぐことがとりあえずできる、ということですか?
0208デフォルトの名無しさん
2005/09/26(月) 20:12:02ADOで良ければ、ストアドも含めて普通に使えるだろ。
BDEも(呆れた事に)まだ行けるらしいし
駄目そうなのは純正dbExpressだけだろ。
0209デフォルトの名無しさん
2005/09/26(月) 20:19:03BDE5とOracle10gについて
http://bbs.com.nifty.com/mes/cf_wrentT_m/FDELPHI_B003/wr_type=C/wr_page=1/wr_sq=FDELPHI_B003_0000000031
なおWIN2003 Serverだと、IMEをいじったり色々作業が必要。
0210207
2005/09/26(月) 20:41:52Delphi2005にしたほうがいいでしょうか・・・
0211デフォルトの名無しさん
2005/09/26(月) 22:27:440212デフォルトの名無しさん
2005/09/27(火) 00:08:14たぶん作れなくはないけどイチから作る技術がいるって話だと
予想しているのですけど。
そのへん解説してあるところあったら教えてください。
(ググってもサービスじゃあまりに一般名詞すぎてわけわからんです...)
0213デフォルトの名無しさん
2005/09/27(火) 00:22:44ctrl+Aで全選択状態にするにはなんかプロパティの設定で可能ですか?
それともなんかコードを書く必要がありますか?
0214デフォルトの名無しさん
2005/09/27(火) 01:29:54Direct Oracle Accessでググると少し幸せになれるかもしれない。
0215デフォルトの名無しさん
2005/09/27(火) 01:37:02WinAPI駆使すれば可能だが、極めて難しい。
C用だけど参考までに。
ttp://hp.vector.co.jp/authors/VA015815/200234.html
>>213
その様なプロパティは存在しない。自分で書くしかない。簡単だけど。
0216デフォルトの名無しさん
2005/09/27(火) 02:06:41TActionList 置いて、標準アクションの TEditSelectAll 作るだけでおk
0217デフォルトの名無しさん
2005/09/27(火) 03:48:58あるソフトのListViewから指定された文字列がある所を選択させたいのです。
下記の様にやってみましたが、LPARAMをどうしたら良いのか分かりません。
どうか御教示お願いします。
test := 'test';
SendMessage(wnd, LB_SELECTSTRING, -1, test);
0218デフォルトの名無しさん
2005/09/27(火) 05:51:24うる覚えでごめん
0219デフォルトの名無しさん
2005/09/27(火) 08:44:03http://hpcgi1.nifty.com/MADIA/DelphiBBS/wwwlng.cgi?print+200509/05090026.txt
0220デフォルトの名無しさん
2005/09/27(火) 12:56:17他のプロセスに対して行うのだったらそれじゃできないよ。
共有メモリ VirtualAllocEx ReadProcessMemory WriteProcessMemory でぐぐれ。
0222デフォルトの名無しさん
2005/09/28(水) 05:39:520223222
2005/09/28(水) 05:57:08「他のプロセスも含めて」って事です。
0224212
2005/09/28(水) 08:14:46どうもありがとうございました。
私のウデでは難しいような気がしてきました。
本当にサービスでないといけないのか再検討してみます。
0225デフォルトの名無しさん
2005/09/28(水) 11:42:56procedure Main;
begin
try
func1;
func2;
func3;
except
on e Exception do
begin
ShowMessage(e.Message);
end;
end;
end;
(func2もfunc3も同じように記述)
procedure func1;
begin
try
なんたらかんたら〜
except
raise
end;
end;
0226デフォルトの名無しさん
2005/09/28(水) 11:59:11間違っちゃいないけれど、Mainでキャッチする例外とfuncXXXでキャッチする例外が同じなら
funcXXXの try〜exceptは別にいらない。
funcXXXで発生した例外は呼び出し側(Main)のexeptでキャッチされるから。
0227225
2005/09/28(水) 12:51:33ありがとうございました
0229デフォルトの名無しさん
2005/09/29(木) 13:37:54[致命的エラー] ユニット DBTables は異なるバージョン DB.TCustomConnection によりコンパイルされています
なぜでるのか見当つきません。
0230デフォルトの名無しさん
2005/09/29(木) 13:48:56DBTablesを全ファイル検索してみ?
0232デフォルトの名無しさん
2005/09/29(木) 13:58:54プロジェクト内に持っちゃったら、そりゃー異なるバージョンのDBTablesが出来てエラーになるよ。
0233デフォルトの名無しさん
2005/09/29(木) 14:04:50なんか見たこと有るな。そのエラー。なんだったか。
えーとD7のアップデートを適用してSqlConstの入れ換えしてない
とか、そんなネタだったような。
http://onigiri.s3.xrea.com:8080/delphi/index.php?Delphi7Update1
0234229
2005/09/29(木) 14:13:47Delphi6では、同コードで通るので、気づきませんでした・・・。
出てきた分、全部消してみます。
>>233
BDEを使用しています。
dbExpressを使用しなくても出るのかもしれないですね。
確認してみます。
0235デフォルトの名無しさん
2005/09/29(木) 14:56:35リンク時のDBTables.dcuと異なる場合にそのエラーが出る。
Delphiのコンパイルエラーでは一番やっかいなやつかも。
0236デフォルトの名無しさん
2005/09/29(木) 17:36:090237デフォルトの名無しさん
2005/09/29(木) 17:38:18つかえる
0238デフォルトの名無しさん
2005/09/29(木) 17:54:580239デフォルトの名無しさん
2005/09/29(木) 18:24:29Del win32なら普通にIntToStrが使える
.netならSystem.Convert.ToInt64();
Delphi のリファレンス嫁
0240デフォルトの名無しさん
2005/09/29(木) 19:44:510241240
2005/09/29(木) 19:48:370242デフォルトの名無しさん
2005/09/29(木) 22:34:07ありがとうございます助かります。
0243デフォルトの名無しさん
2005/10/01(土) 00:27:56一応添付のReadmeはよみました。
どうやらFastMM4本体はなにもインストールする必要はなく、単にuseすれば
良いようですね、実際それで動作しました。
しかしBorlandMM.dllの差し替えが良くわかりません。
/binにある同名のファイルを差し替えろと書いてあるようですが、IDEとApplication
とあり、さらにプロジェクトファイルもあり、どうしたらいいかよくわからないです。
バージョンは2005、非公式パッチは入れてあり、リスクは覚悟してます。
よろしくお願いします。
0244デフォルトの名無しさん
2005/10/01(土) 00:35:13WindowsスタンドアロンでDelphi6Personalから使えるものを教えていただけませんか?
Delphiアプリの配布のみで使用できるものがあれば言う事ないのですが…
0245デフォルトの名無しさん
2005/10/01(土) 10:14:190246デフォルトの名無しさん
2005/10/01(土) 10:48:073行目の意味がわからないけど、MDBを使う方法がどこかに書いてあったと思う。
ActiveXを使ってADOがなんちゃらって感じで。
俺はSQLiteを使ったりしてるけど、これはDLL配布が必要です。
0247デフォルトの名無しさん
2005/10/01(土) 11:31:25>>246
uses ADODB;
TADOQueryでTCustomADODataSetにMDBを指定すればいい
0248デフォルトの名無しさん
2005/10/01(土) 11:34:42スマン間違えたConnectionStringのプロパティにMDBを指定
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=*.mdb;Persist Security Info=False
0249デフォルトの名無しさん
2005/10/01(土) 14:31:290250デフォルトの名無しさん
2005/10/01(土) 22:19:490251デフォルトの名無しさん
2005/10/01(土) 22:50:23正規表現コンポを使え
>>243
> しかしBorlandMM.dllの差し替えが良くわかりません。
いろいろあるけど基本的にはPrecompiledのPerformanceにあるDLLを使えばよい
IDE・・・単純に入れ換えるだけ
Application・・・Sharememと同じ要領。プロジェクトのusesの先頭にFastMMのユニット
あとはアプリケーションと一緒にDLLを配布
0252デフォルトの名無しさん
2005/10/02(日) 00:00:07あっ、VB なみかぁ・・・
0253243
2005/10/02(日) 00:36:33ありがとう。でもまだいまいちわかりません。すいませんがもう少し教えてください。
FastMMをuseして作ったアプリは全てこのBorlandMM.dllと一緒に配布しないと
いけないってことですか?
IDEのほうを入れ替えるだけなら同時配布は避けられますか?
0254デフォルトの名無しさん
2005/10/02(日) 02:39:37VCL Forms Application - Delphi for .NET
Windows Forms Application - Delphi for .NET
VCL Forms Application - Delphi for Win32
これってなにがどうちがうんですか?
VCL Forms Application - Delphi for Win32とVCL Forms Application - Delphi for .NETって一緒じゃないんですか?
0255デフォルトの名無しさん
2005/10/02(日) 02:50:40なんか、自分の使ってるOSにもっと関心を持たないと。プログラミングとか以前に
0256デフォルトの名無しさん
2005/10/02(日) 02:59:54Win32でつくったやつはうぃんどうずでしかうごかないってことでおk?
0257デフォルトの名無しさん
2005/10/02(日) 03:01:49VCLの時点でWin専用だ
0258デフォルトの名無しさん
2005/10/02(日) 03:11:40ASP.NET Application - Delphi for .NET
VCL Forms Application - Delphi for .NET
Windows Forms Application - Delphi for .NET
VCL Forms Application - Delphi for Win32
これ詳しく解説してくれる人もしくは解説してるサイトない・・・?
0259デフォルトの名無しさん
2005/10/02(日) 03:30:170260デフォルトの名無しさん
2005/10/02(日) 03:32:43まじで・・・?
じゃあ重要部分だけでもお願いします・・・。
0261デフォルトの名無しさん
2005/10/02(日) 04:24:53VCLは非.NET。
Windows Forms は.NET。
0262デフォルトの名無しさん
2005/10/02(日) 04:37:10thx
しかしそれだとVCLを使う利点がわからない
.NETつかえたほうがいいにきまってるしなんかVCLのほうが長けてるってのはないのかな
0263デフォルトの名無しさん
2005/10/02(日) 04:54:460264デフォルトの名無しさん
2005/10/02(日) 05:46:03面倒な部分を勝手にやってくれる発想だから言ってみればVCLとかぶってる。
ただ一部のコンポーネントの表示が変だったりとか
.NET Frameworkをインストールしないと動かないアプリになったりするとか
その辺が現状のデメリットかな。
0265デフォルトの名無しさん
2005/10/02(日) 06:02:35お仕事だったらやるけどねぇ。それ以外では.NETはいらない子。
0266デフォルトの名無しさん
2005/10/02(日) 07:27:33>>252
>>253
BorlandMM.dllの役割は「プロジェクトの新規作成」「DLLウィザード」を使えばわかるよ。
0267デフォルトの名無しさん
2005/10/02(日) 08:47:36Win32 の API は一般人にはソース非公開だろ。
.NET はライブラリレベルで API だから、非公開なのは Win32 と同じ。
VCL.Win32 は単なる一企業のラッパライブラリにすぎない。
> .NETが枯れてくればその思想はすばらしい。
同意。でも、あとまだ時間がかかりそう。
0268デフォルトの名無しさん
2005/10/02(日) 11:30:550269デフォルトの名無しさん
2005/10/02(日) 12:43:12> IDEのほうを入れ替えるだけなら同時配布は避けられますか?
はい。
0270デフォルトの名無しさん
2005/10/02(日) 15:50:16APIまで遡らなくても分かる事・出来る事は沢山あるだろ。
詰まらん物まで非公開。これがMSクオリティ。
0271デフォルトの名無しさん
2005/10/02(日) 15:56:12NTFSのファイルの概要を取得したいんですがどうしたらいいでしょうか?
ttp://ant0x.udap.jp/tips/tips_fileSummaryInfo.htm
このページはCですが、こんな事をやりたいんです。
0272デフォルトの名無しさん
2005/10/02(日) 16:07:56某だってコンパイラや IDE のソースは非公開なわけだが
0273デフォルトの名無しさん
2005/10/02(日) 16:13:590274デフォルトの名無しさん
2005/10/02(日) 16:16:09それ C# だろ。ぜんぜん違う
0275デフォルトの名無しさん
2005/10/02(日) 17:36:57ソースを読めば色々分かるからね。
0276デフォルトの名無しさん
2005/10/02(日) 19:08:210277デフォルトの名無しさん
2005/10/02(日) 20:06:170278デフォルトの名無しさん
2005/10/02(日) 20:08:02たぶんこれかな。
IPropertyStorageを使ってReadMultipleで読み取り
http://groups.google.co.jp/group/borland.public.delphi.com.activex.using/msg/7d7b55af61b98d08?hl=ja&
0279デフォルトの名無しさん
2005/10/02(日) 23:40:32インターフェイスがポップアップだけのポップアップランチャーを作ろうと思うんですが、
メインフォームを表示させずポップアップだけにするにはどうしたら良いでしょうか?
0280デフォルトの名無しさん
2005/10/02(日) 23:51:20Application.ShowMainForm:= False;
これでMainFormはタスクバーからも消える
ちゃんと終了させる方法は用意しとけよ
0281デフォルトの名無しさん
2005/10/03(月) 10:20:55その結果を受け取るにはどうすればいいのですか?
コマンドプロンプトでの実行は
>DOSアプリ ファイル名
で行い
結果はDOS画面に表示されます(1行の文字列)
0282デフォルトの名無しさん
2005/10/03(月) 10:39:140283デフォルトの名無しさん
2005/10/03(月) 11:02:44結果を貰うには、起動時に
匿名パイプを作って、そいつを起動プロセスにくっつけるんだけど
http://www.google.co.jp/webhp?q=CreatePipe+Delphi+CreateProcess
で後はなんとかしてくれ
0284デフォルトの名無しさん
2005/10/03(月) 11:58:480285デフォルトの名無しさん
2005/10/03(月) 14:23:37時代遅れで開発環境も安定していないのでやめたほうがいいといわれました。
皆さんDelphiをやめた後はどんな開発ツールを使っているのでしょうか?
0286デフォルトの名無しさん
2005/10/03(月) 14:26:59ナ・イ・シ・ョ ♥
0287デフォルトの名無しさん
2005/10/03(月) 14:28:480288デフォルトの名無しさん
2005/10/03(月) 14:59:56Eclipce
0289デフォルトの名無しさん
2005/10/03(月) 15:14:180290デフォルトの名無しさん
2005/10/03(月) 19:04:51仕事: Java
趣味: Delphi, C++, SmallTalk
もうJavaいやだ(´・ω・`)
Delphiの仕事したいよぉ…
0291デフォルトの名無しさん
2005/10/03(月) 20:33:25このスレには実際Delphiで飯食ってる人はどれくらいいるんですか?
Delphiは趣味な人のほうが多くないですか?
そう思っただけなんですけど……
0292デフォルトの名無しさん
2005/10/03(月) 20:35:320293デフォルトの名無しさん
2005/10/03(月) 20:56:23世間の評判ではVBの圧勝とのことですが本当ですか?
0294デフォルトの名無しさん
2005/10/03(月) 21:00:050296デフォルトの名無しさん
2005/10/03(月) 23:28:39タスクマネージャで見ると、メモリ使用量が350MByteってなってたのは、
Update1までのバグだったんでしょうか?
Update3まで入れたら何とか落ち着いたみたいなんですが・・・
一瞬、メモリ買いにいかなきゃ、と焦りましたよ。
0297デフォルトの名無しさん
2005/10/04(火) 01:42:300298デフォルトの名無しさん
2005/10/04(火) 09:44:350299デフォルトの名無しさん
2005/10/04(火) 09:51:210300デフォルトの名無しさん
2005/10/04(火) 11:37:46ud3 で直ったんだから D2005 が悪いってことだろ。信者はみんな馬鹿か?
0301デフォルトの名無しさん
2005/10/04(火) 16:50:080302質問
2005/10/04(火) 17:33:58ってありますけど、いま数式プログラムを作っている最中で
このeの表記方法がわからずに、2.718を書いて代用しています。
このeを使った正しい表記方法はないでしょうか?
0303デフォルトの名無しさん
2005/10/04(火) 17:38:130304デフォルトの名無しさん
2005/10/04(火) 17:45:410305質問
2005/10/04(火) 18:20:12ありがとうございました
0306デフォルトの名無しさん
2005/10/04(火) 18:23:10var
e:extended;
begin
e := exp(1);
Label1.Caption := FloatToStr(e);
end;
0307デフォルトの名無しさん
2005/10/04(火) 19:10:060308デフォルトの名無しさん
2005/10/04(火) 19:14:530309デフォルトの名無しさん
2005/10/04(火) 19:19:47と定義して使うといいんじゃないの?
0310デフォルトの名無しさん
2005/10/04(火) 21:54:110311デフォルトの名無しさん
2005/10/05(水) 00:24:42>>298
メモリは512MByteだが
>>300
このスレ最悪。
馬鹿ばっかり。
逝ってよ..._〆(゚▽゚*)
0312デフォルトの名無しさん
2005/10/05(水) 00:48:08真性だなwwwwwwwwwwww
0313デフォルトの名無しさん
2005/10/05(水) 01:12:040314デフォルトの名無しさん
2005/10/05(水) 01:43:15ちなみに俺は、Delphi4+DelphiX。
0315デフォルトの名無しさん
2005/10/05(水) 01:53:16Wav音の重ねあわせとMIDI演奏をどうするか考え中。
0316デフォルトの名無しさん
2005/10/05(水) 10:20:53漏れはQuadruple Dだな
Del2005でも使えるし
0317デフォルトの名無しさん
2005/10/05(水) 11:50:060318デフォルトの名無しさん
2005/10/05(水) 13:09:37どなたかご教授お願いします。
procedure TForm1.Button1Click(Sender: TObject);
var
hoge : array of double;
hogehoge : array of array of double;
begin
SetLength(hoge, 2);
hoge[0] := 1; hoge[1] := 2;
Label1.Caption := FloatToStr(Sum(hoge)); //3が出力されます。
{ //以下のままだとエラーが出て実行できません。
SetLength(hogehoge, 2, 2);
hogehoge[0,0] := 1; hogehoge[0,1] := 2;
hogehoge[1,0] := 3; hogehoge[1,1] := 4;
Label2.Caption := FloatToStr(Sum(hogehoe)); // 10がでてきてほしい
}
end;
0319デフォルトの名無しさん
2005/10/05(水) 13:17:49ヘルプより
function Sum(const Data: array of Double): Extended; register;
どう見ても1次元配列だろう。
0320デフォルトの名無しさん
2005/10/05(水) 13:19:280321デフォルトの名無しさん
2005/10/05(水) 13:48:07じゃあ作って晒してくれ。
0322デフォルトの名無しさん
2005/10/05(水) 13:53:26sum :=0 ;
for x:=0 to High(hogehoge) do
for y:=0 to High(hogehoge[x]) do sum:=sum + hogehoge[x][y];
0323デフォルトの名無しさん
2005/10/05(水) 14:02:310324デフォルトの名無しさん
2005/10/05(水) 14:03:220325デフォルトの名無しさん
2005/10/05(水) 14:11:220326デフォルトの名無しさん
2005/10/05(水) 14:15:06バージョンとProfessional・Enterpriseの差によって手間は違うけど、作れるよ
0327デフォルトの名無しさん
2005/10/05(水) 16:00:276パーソナルしかないけどちょっとやってみよっかな
0328デフォルトの名無しさん
2005/10/05(水) 16:33:310329デフォルトの名無しさん
2005/10/05(水) 17:03:080330デフォルトの名無しさん
2005/10/05(水) 17:15:00そうじゃないなら、 WinCGIでDLLを作るか、コンソールアプリCGIでやるかになると思うよ。
0331330
2005/10/05(水) 17:31:20・ WinCGI テキストファイルを介してやりとりする
・ コンソール CGI 環境変数と、標準入出力でやりとりする
この2つが実行形式で作れるもの
パーソナルで作るならこの方式になると思う
その他に、ISAPI/NSAPI というのがあって、これがDLL形式
0332デフォルトの名無しさん
2005/10/05(水) 18:48:110333デフォルトの名無しさん
2005/10/05(水) 18:53:200334デフォルトの名無しさん
2005/10/05(水) 18:54:490335デフォルトの名無しさん
2005/10/05(水) 18:55:490336デフォルトの名無しさん
2005/10/05(水) 22:12:32という事で海外ではperl代わりに使っている人も・・・多少は居る
0337デフォルトの名無しさん
2005/10/05(水) 23:32:000338ななしへたぐらま ◆XcB18Bks.Y
2005/10/05(水) 23:37:02Pi関数について,手元のDelphi 5で試してみましたがコンパイラは単に定数値を代入しているだけでした.
変数 f を double で定義して f := Pi と代入するコードをコンパイルしてCPUウィンドウで見ると以下のようになっていました.
mov [f],$54442d18
mov [f + $4],$400921fb
mov命令はmove,つまりデータの転送を行う命令です.
変数fの中身がある場所に固定の値を2回に分けて転送しています.
singleやextendedでも試しましたが,転送回数がそれぞれ1回,3回になるほかは同様でした.
同じようにコンパイラが扱う関数や手続きとしては
ほかにord関数,Inc手続き,Dec手続きなどがあります
(…と記憶.どこかに書いてあったはずですが確認できず).
自作の関数では同じようなことはできないので定数を定義するのがよいでしょうね.
0339デフォルトの名無しさん
2005/10/06(木) 00:12:00意味がわかりませんが? 内部実装はともかく
function Napier: extended;
begin
result := exp(1);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption := FloatToStr(Napier);
end;
で、何が不都合なの?
0340デフォルトの名無しさん
2005/10/06(木) 00:13:40KylixはDelphiですよ。
VCLを使ってますし。CrossKylixを使えば、DelphiのIDEからコンパイル出来ます。
> レアケースを挙げても
Kylixユーザーの大半はCGI目的で使っているのでは。
0341デフォルトの名無しさん
2005/10/06(木) 00:16:000342デフォルトの名無しさん
2005/10/06(木) 00:16:06いてもレアケースだろな
0343デフォルトの名無しさん
2005/10/06(木) 00:23:57Delphiスレなんだから意味あるだろう。何ムキになっているんだか。
0344デフォルトの名無しさん
2005/10/06(木) 00:28:140345デフォルトの名無しさん
2005/10/06(木) 00:30:540346デフォルトの名無しさん
2005/10/06(木) 00:32:480347デフォルトの名無しさん
2005/10/06(木) 00:38:14そりゃ意味はあるでしょ。どんなスレでも。情報提供なんだからさ。
0348デフォルトの名無しさん
2005/10/06(木) 01:50:00のはどう見ても見当違いだろ。無意味とはいわんけど。
0349デフォルトの名無しさん
2005/10/06(木) 02:18:55馬鹿か?参考までにメリットを挙げただけだろ?
そんな事も分からないのか?
ちなみに俺はその解答者じゃないぞw
0350デフォルトの名無しさん
2005/10/06(木) 03:19:54いうのは参考というより、有害だわな。
0351デフォルトの名無しさん
2005/10/06(木) 03:24:090352デフォルトの名無しさん
2005/10/06(木) 03:28:08→こんなことして動かすこともできますよ。そうしてる人もちょっとはいますよ。
→はぁ?だから何?
→謎の喧嘩 ←今ここ
→ラブホ
0353デフォルトの名無しさん
2005/10/06(木) 05:08:44久しぶりにイタイのが出てきて嬉しいぞ。
0354デフォルトの名無しさん
2005/10/06(木) 05:37:01いきなり頭から否定するから無駄に荒れるんだろ
コマンドを頭に詰め込むより人として基本的な事から勉強しようぜ
0355デフォルトの名無しさん
2005/10/06(木) 05:47:290356デフォルトの名無しさん
2005/10/06(木) 05:57:03ばかだね
0357デフォルトの名無しさん
2005/10/06(木) 07:42:330358デフォルトの名無しさん
2005/10/06(木) 08:22:01自分で作れない関数の代表は write だろうな
型可変オープン配列パラメータでないのに、
型なしパラメータに見えるのに型に応じて動いてる。
他に Sliceもつくれないな。
0359デフォルトの名無しさん
2005/10/06(木) 10:32:42VCL はソース公開とかいってるが、特別に文法無視した実装が古くからあるんだよな
0360デフォルトの名無しさん
2005/10/06(木) 10:35:50っていんちきだったんだ
0361デフォルトの名無しさん
2005/10/06(木) 10:51:540362デフォルトの名無しさん
2005/10/06(木) 11:24:300363デフォルトの名無しさん
2005/10/06(木) 11:24:47一応定数を返すだけの関数にしとくと色々便利なんだよ
いつかPIの求め方が変更されるかもしれないだろ?
およそ3とかに
0364デフォルトの名無しさん
2005/10/06(木) 11:26:57定数の欠点は関数やプログラムコードを使って値を生成できないことだね。
eくらいはどうって事もないけど。
0365デフォルトの名無しさん
2005/10/06(木) 11:34:15一度コードで値を生成して表示させて、定数として定義するだけじゃねの。あくまで"定数"の話なんだから。
0366デフォルトの名無しさん
2005/10/06(木) 11:45:01カスタムビルドステップのないDelphiではその定義するだけが面倒だというお話。
0367デフォルトの名無しさん
2005/10/06(木) 11:51:06ま、ぐだぐだ続ける話でもないか。
0368デフォルトの名無しさん
2005/10/06(木) 12:20:14のは将来の実装の変更を見越してるから。(精度が倍になるとか)
0369デフォルトの名無しさん
2005/10/06(木) 12:21:450370デフォルトの名無しさん
2005/10/06(木) 12:25:11formatは型可変オープン配列パラメータだから作れるだろ
0371デフォルトの名無しさん
2005/10/06(木) 12:26:36簡単な例たのむ
0372デフォルトの名無しさん
2005/10/06(木) 12:27:06それはちょっと苦しいな
0373デフォルトの名無しさん
2005/10/06(木) 12:27:56const
BoolChars: array[Boolean] of Char = ('F', 'T');
var
I: Integer;
begin
Result := '';
for I := 0 to High(Args) do
with Args[I] do
case VType of
vtInteger: Result := Result + IntToStr(VInteger);
vtBoolean: Result := Result + BoolChars[VBoolean];
vtChar: Result := Result + VChar;
vtExtended: Result := Result + FloatToStr(VExtended^);
vtString: Result := Result + VString^;
vtPChar: Result := Result + VPChar;
vtObject: Result := Result + VObject.ClassName;
vtClass: Result := Result + VClass.ClassName;
vtAnsiString: Result := Result + string(VAnsiString);
vtCurrency: Result := Result + CurrToStr(VCurrency^);
vtVariant: Result := Result + string(VVariant^);
vtInt64: Result := Result + IntToStr(VInt64^);
end;
0374デフォルトの名無しさん
2005/10/06(木) 12:35:38簡単な例って、 format は SysUtils.pas にそのものがあるじゃないか
0375デフォルトの名無しさん
2005/10/06(木) 13:28:20VCLソースにはPIは関数としても定数としても定義されてない。何らかの理由(効率とか)で特別扱いしてるんだろう。
だからヘルプでは、このどちらでもないものを「便宜上」function PIと表記しているだけだと思う。
eを関数にしたって決してPIと同じ振る舞いはできないのだから、ヘルプにPIが関数として書いてるのだからeも〜ってのは間違ってると思う。
0376デフォルトの名無しさん
2005/10/06(木) 13:35:05理由が分からないのに、同じ振る舞いができないからダメって、なぜ言えるんだろう?
0377デフォルトの名無しさん
2005/10/06(木) 13:36:070378デフォルトの名無しさん
2005/10/06(木) 13:39:26どういう読解力してんだね。
eを関数にするべき理由が、PIも関数と書いてるから、というのはおかしいと言ってるんだ。
0379デフォルトの名無しさん
2005/10/06(木) 13:40:40いやPIの振る舞いは定数との違いがわからんくらい定数に近い。
0380デフォルトの名無しさん
2005/10/06(木) 13:42:10じゃどうしろと?
0381デフォルトの名無しさん
2005/10/06(木) 13:43:51っていうかそういう高度な議論はフサスレでやれ。
0382デフォルトの名無しさん
2005/10/06(木) 13:45:19なるわけないでしょ。どんなバグを想定してるの?
0383デフォルトの名無しさん
2005/10/06(木) 13:47:45別に。「e は関数にしとくべき 」って言うけど、その必要はないんじゃね?少なくとも理由は変じゃね?ってだけ。
0384デフォルトの名無しさん
2005/10/06(木) 13:49:07だから、理由が分からないのにどうしておかしいといえるのか? と。
ヘルプで、PI を関数にしてるのは、なぜ「便宜上」そうなってると思う?
定数にしておけばどこが不便だ思う?
0385デフォルトの名無しさん
2005/10/06(木) 14:16:58「eを関数にしたって決してPIと同じ振る舞いはできないのだから」って書いてるだろう。PIは実際は関数ではないのだから、eを関数にしたってPIと同じようにしたことにはならない。
> ヘルプで、PI を関数にしてるのは、なぜ「便宜上」そうなってると思う?
> 定数にしておけばどこが不便だ思う?
PIの3.1415...を返すという動作を便宜上表現できるものであれば、別に関数でも定数でも良かったんじゃね?たまたま関数で書いたってだけで。
0386デフォルトの名無しさん
2005/10/06(木) 14:42:460387デフォルトの名無しさん
2005/10/06(木) 14:45:090388デフォルトの名無しさん
2005/10/06(木) 14:45:22なぜ、そんなふうになってるかを考えなければ、定数がいいか関数がいいかなんて言えないだろうに。
0389デフォルトの名無しさん
2005/10/06(木) 14:49:340390デフォルトの名無しさん
2005/10/06(木) 14:51:440391デフォルトの名無しさん
2005/10/06(木) 14:51:58eはPi程の出番はないだろうということでコンパイラにそこまでやらせてないんだべ
eのExp(1)に相当するものが欲しければArcCos(-1)でも使えばいいね
Mathユニットにちゃんとコードが載ってるし(最後はAsm文へ行き着くけど)
どっちにしても使う側が気にすることでもなかんべ
0392デフォルトの名無しさん
2005/10/06(木) 15:19:18ということで >>338 の主張は根拠無しってことになった。
0393デフォルトの名無しさん
2005/10/06(木) 17:15:190394デフォルトの名無しさん
2005/10/06(木) 17:22:04意味不明。
0395デフォルトの名無しさん
2005/10/06(木) 17:27:04まあ知らなくても無理はないと思うけど、393は意味不明な事は言っていない。
393は知識をひけらかしかっただけだろうな。間違ってはいないがイタイ奴だ。
0396デフォルトの名無しさん
2005/10/06(木) 19:08:570397デフォルトの名無しさん
2005/10/06(木) 19:10:560398デフォルトの名無しさん
2005/10/06(木) 19:26:53この辺り?
http://ja.wikipedia.org/wiki/%E7%B4%A0%E6%95%B0%E5%AE%9A%E7%90%86
0399デフォルトの名無しさん
2005/10/06(木) 19:59:570400デフォルトの名無しさん
2005/10/06(木) 20:03:36つまらん質問ばかりだから、今回のような話題はこっちでやっても委員ジャマイカ
0401デフォルトの名無しさん
2005/10/06(木) 20:07:57Delphiのいい参考書ないでしょうか?
0402デフォルトの名無しさん
2005/10/06(木) 20:08:44質問した人間そっちのけで話し進めるならあっちでやれ。
ここは質問スレ。
0403デフォルトの名無しさん
2005/10/06(木) 20:12:22このごろの質問者はしっぱなしだし
0404デフォルトの名無しさん
2005/10/06(木) 20:14:170405デフォルトの名無しさん
2005/10/06(木) 20:19:460406デフォルトの名無しさん
2005/10/06(木) 20:20:360407デフォルトの名無しさん
2005/10/06(木) 20:37:18とりあえず
http://onigiri.s3.xrea.com:8080/delphi/index.php?Delphi%B4%D8%CF%A2%BD%F1%C0%D2
0408デフォルトの名無しさん
2005/10/08(土) 10:21:34IDE で、クラス名(Memo1: TMemo; などで TMemo の部分)にマウスカーソルを
あてると、クラスの情報がヒント表示されます。
しかし、フリーの VCL などでは表示されないのもあります。これは何故なのでしょうか?
0409デフォルトの名無しさん
2005/10/08(土) 11:22:02ソースが無いから。
0410デフォルトの名無しさん
2005/10/08(土) 16:00:42Randomize(100)とやってもうまくいきません。何か間違ってるでしょうか?
0411デフォルトの名無しさん
2005/10/08(土) 16:06:110412デフォルトの名無しさん
2005/10/08(土) 16:07:020413デフォルトの名無しさん
2005/10/08(土) 16:10:05質問時にどう上手くいかないか書かないオマイが間違ってる
ヘルプを読まないオマイが間違ってる
結論:すべてオマイが間違ってる
0414デフォルトの名無しさん
2005/10/08(土) 16:15:15ファー……ブルスコ……ファー
モルスァ
0415デフォルトの名無しさん
2005/10/09(日) 01:00:09これをどうにかして無くす事はできませんか?
Enterの方は "Key := #0;" で鳴らなくなったんですけど。
0416デフォルトの名無しさん
2005/10/09(日) 02:10:440417デフォルトの名無しさん
2005/10/09(日) 02:17:140418デフォルトの名無しさん
2005/10/09(日) 03:20:48http://headlines.yahoo.co.jp/hl?a=20051009-00000008-kyodo-bus_all
0419デフォルトの名無しさん
2005/10/09(日) 04:15:400420デフォルトの名無しさん
2005/10/09(日) 06:02:09orz
0421デフォルトの名無しさん
2005/10/09(日) 06:31:240422デフォルトの名無しさん
2005/10/09(日) 06:43:190423デフォルトの名無しさん
2005/10/09(日) 08:50:51これ見て「ナニぃ〜!」と一瞬あせったが、会社名「某ランド」だったね。
良かった...。
http://headlines.yahoo.co.jp/hl?a=20051009-00000008-mai-bus_all
0424デフォルトの名無しさん
2005/10/09(日) 09:18:41ここは質問スレ。
0425デフォルトの名無しさん
2005/10/09(日) 12:07:28鳴らないよ馬鹿か氏ね
0428デフォルトの名無しさん
2005/10/09(日) 21:23:16質問者もDelphiのバージョンと使用環境くらい明示しろよ
Delphi 7/XP Pro SP2じゃ鳴らん。
0429415
2005/10/09(日) 21:27:070430デフォルトの名無しさん
2005/10/09(日) 21:45:140432デフォルトの名無しさん
2005/10/09(日) 22:57:050433デフォルトの名無しさん
2005/10/09(日) 23:03:300434デフォルトの名無しさん
2005/10/09(日) 23:07:30型安全なのはarray of const、
Cと同じようにしたければcdeclのvarargs
0435デフォルトの名無しさん
2005/10/10(月) 01:18:04例外が発生したときにエラーコードを自動的にイベントビューアに書き込むようですが、これを止めたいです。
どうすればいいのでしょうか?
0436デフォルトの名無しさん
2005/10/10(月) 01:32:090437デフォルトの名無しさん
2005/10/10(月) 01:41:250438435
2005/10/10(月) 02:12:47難しかったけど、なんとなく出来た気がします。
とりあえずイベントビューアにはのらなくなった。
ふつーに日ごろtryなんて使ってるのになんかサービス&イベントビューア
ってことでなんか特別なのかと身構えちゃって思いつかなかったよ。
ありがとう436,437
0439テンプレ
2005/10/10(月) 09:03:18,NETなら出来ます。
以上。
0440デフォルトの名無しさん
2005/10/10(月) 09:27:24に関係あるのか? アフォレスの典型だな
0441デフォルトの名無しさん
2005/10/10(月) 13:28:13駄目だよ小学生にマジレスしたら。トラウマになっちゃうよ(笑
0442デフォルトの名無しさん
2005/10/10(月) 14:33:55よくわかりませんが、こういうことかな?
if Key = #13 then key := #0;
if ((GetKeyState(VK_CONTROL) and $8000) <> 0) then key := #0;
0443デフォルトの名無しさん
2005/10/10(月) 18:42:14意味がよくわからないのですがDelphi.NETではできるということですか?
ちゃんと答えてください。
0444デフォルトの名無しさん
2005/10/10(月) 18:52:14それ以外に聞こえたら説明が悪かったのだろう
0445デフォルトの名無しさん
2005/10/10(月) 21:15:55超初心者用のスレなので、書き込んでみます。
最初に i=integer; と宣言して、その下でi=:10と記載しました。
その後にi=real;と型を書き換えたら、エラーがでるようになりました。
realは実数で、integerは整数と参考書に書いてあったのですが、
10は実数ではないのでしょうか???
0446デフォルトの名無しさん
2005/10/10(月) 21:22:12begin i := 10; end;
のようにreal型変数に10を代入しても問題ない。
ただの書き間違いじゃないの。
エラーの内容読んでみ。
0447デフォルトの名無しさん
2005/10/10(月) 21:27:18i:=10じゃね
0448デフォルトの名無しさん
2005/10/10(月) 21:36:45書式はなるべくソースそのままにしようぜ
言いたいことはわかるが、それがここだけの打ち間違いなのかソースでも間違ってんのか分かりにくい
0449445
2005/10/10(月) 21:37:47エラー内容は、「指定された引数で呼び出すことができる
オーバーロード関数IntToStrが定義されていません」と・・・。
IntToStrっていう記述は、integer型にしか使えないのかな?
「デルファイはじめの一歩」という文字がでかくイラストが多い本を
まだ60Pしか読んでないから、テキストの例題に記載されたとおりのこと
以外は何もできない・・・。
0450デフォルトの名無しさん
2005/10/10(月) 21:40:42FloatToStrかFormat('%f', [i]);使え。
0451445
2005/10/10(月) 21:50:27もともと文系の人間で、おとといテキストを買ってきたばかりなので
なかなかサクサクとは勉強が進みません。
質問の仕方自体よく分からなかったりもしますが、多分また
お邪魔すると思います。これからもよろしくお願いします(・ω・)ノ
0452デフォルトの名無しさん
2005/10/10(月) 21:54:32なにが問題なのか自分なりに考えた結果とソースがあればおk
0453デフォルトの名無しさん
2005/10/10(月) 22:05:34低学歴ニートの俺でも時間掛けたら超基本的なとこまではできたから、絶対大丈夫だよ。
がんばれ〜
0454デフォルトの名無しさん
2005/10/10(月) 22:08:1421世紀にもなってまだ整数がオブジェクトじゃない言語があるなんて信じられないよ。
0455デフォルトの名無しさん
2005/10/10(月) 22:25:01Delphi.NETでもそれで済むよ?
0456デフォルトの名無しさん
2005/10/10(月) 22:26:04ていうか文系でも複雑な計算が必要だったり
性能を追求しなければ全く問題ない
0457デフォルトの名無しさん
2005/10/11(火) 00:53:06.NETなら出来ます。
0458デフォルトの名無しさん
2005/10/11(火) 01:10:15IntToStrも中身これだし。
古かろうがなんだろうが、コンパイラが直接サポートする手続きのほうが便利だよ。
0459デフォルトの名無しさん
2005/10/11(火) 01:27:520460デフォルトの名無しさん
2005/10/11(火) 02:11:200461デフォルトの名無しさん
2005/10/11(火) 08:01:53意味がよくわからないのですがVBはだめでDelphi.NETではできるということですか?
ちゃんと答えてください。
0462デフォルトの名無しさん
2005/10/11(火) 08:34:54DelphiはだめでVB.NETではできるということです。
0463デフォルトの名無しさん
2005/10/11(火) 09:17:390464デフォルトの名無しさん
2005/10/11(火) 09:17:51.NET自体が変ということでしょうか?
0465デフォルトの名無しさん
2005/10/11(火) 09:38:00http://headlines.yahoo.co.jp/hl?a=20051009-00000008-mai-bus_all
0466デフォルトの名無しさん
2005/10/11(火) 09:39:29他の言語をどうぞ。
おおおおおっと、VBの話しが出てますね、VBでもどうぞ。
0467デフォルトの名無しさん
2005/10/11(火) 11:29:02>>418 でほぼ既出。
0468デフォルトの名無しさん
2005/10/11(火) 12:24:31とうか同じやつ(VB厨またはインライン君)でしょ
0469デフォルトの名無しさん
2005/10/11(火) 12:52:25ここは質問スレ。
0470デフォルトの名無しさん
2005/10/11(火) 12:53:280471デフォルトの名無しさん
2005/10/11(火) 13:27:08他スレも全然伸びない。
0472デフォルトの名無しさん
2005/10/11(火) 14:16:21(プロキシサーバ対応で・・・)
FileStreamでやらないと駄目なのかなぁ
ちょっとめんどっちい
0473デフォルトの名無しさん
2005/10/11(火) 14:20:520474デフォルトの名無しさん
2005/10/11(火) 14:45:13あ、そか サンクス
んーJpeg画像を直でURLに指定したら、画像の周りに余白がでるなぁ
消せないのかな
0475デフォルトの名無しさん
2005/10/11(火) 14:47:380476472
2005/10/11(火) 14:48:25結構めんどいなぁ・・・。
やっぱりImageコンポーネントに入れ込むことを考えないといけないか
0477デフォルトの名無しさん
2005/10/11(火) 14:56:19本当なんでしょうか?
どの言語を覚えたらいいか、真剣に考え中です。
0478デフォルトの名無しさん
2005/10/11(火) 14:58:140479デフォルトの名無しさん
2005/10/11(火) 15:09:01http://www.hicomponents.com/
0480デフォルトの名無しさん
2005/10/11(火) 15:22:23目的がDelphiをやる事なら君がやっても意味ない。
でもDelphiの部分を何に置き換えたって同じだよ
どの言語を覚えるかというのがプログラム言語の意味なら、
君は、プログラム言語をやるより、他の事やった方が幸せになれると思うよ。
というか、こんなもの覚えて、何をしたいわけ?
0481472
2005/10/11(火) 15:25:57サンクスです。いいなぁこのコンポーネント
これでfreeだったらなぁ。。。(ショボーン
0482472
2005/10/11(火) 16:31:33ttp://www.tmssoftware.com/webimage.htm
探していただいたかたどうもでした
0483デフォルトの名無しさん
2005/10/11(火) 16:52:35http://gamdev.org/w/?%5B%5BGraphics32%5D%5D
0484477
2005/10/11(火) 20:06:00なんか、Delphiの立場的なものがわかった気がします。
ちょっと、いろいろ調べて考えることにします。
0485デフォルトの名無しさん
2005/10/11(火) 20:13:000486デフォルトの名無しさん
2005/10/11(火) 20:14:25そうだね。 学校の勉強と違って、こういうのは、目的があってこその道具。
目的なくて、教養としてとりあえず勉強したいという「勉強が目的」ならC言語でもやればいい
0487デフォルトの名無しさん
2005/10/11(火) 21:59:560488445
2005/10/11(火) 23:03:43(例えば、「var」とか「IntToStr」の「Str」部分とか・・・。)
今日同じ会社のプログラマーさんの席の近くを少しうろついてみた(不審?)のですが、
それっぽい単語は出てきませんでした。(´ω`)=3
これは会社のプログラマーさんに直接聞いていくしかないのでしょうか?
(参考になる本やサイトが見つけられなかったのです・・・。)
みなさんはどうやって覚えたのでしょうか?
0489デフォルトの名無しさん
2005/10/11(火) 23:18:44IntToStr() は、頭のなかでは イントトゥストリング と言ってる。
integer 整数を string 文字列 に変換ってことだね。
0490445
2005/10/11(火) 23:56:52今日はif文の書き方を覚えました。明日はif文の入れ子のやつを勉強します。
それではおやすみなさい(・ω・)ノシ
0491デフォルトの名無しさん
2005/10/12(水) 01:12:18procedureは「プロシージャ」辺りであり「プロセドゥア」でない
あと「引数」は「ひきすう」、間違っても「いんすう」じゃない
0492デフォルトの名無しさん
2005/10/12(水) 01:20:220493デフォルトの名無しさん
2005/10/12(水) 01:57:110494デフォルトの名無しさん
2005/10/12(水) 02:08:30オレはブラインドタッチができないけど、頭のなかで イントトゥスリング と
いいながら IntToStr() でタイプしてると効率が上がるような気がする。
人によって言い方も、また、頭の中でもつぶやかない人がいると思うけど。
0495デフォルトの名無しさん
2005/10/12(水) 02:58:320496デフォルトの名無しさん
2005/10/12(水) 04:16:44要はみんな適当。と。
0497デフォルトの名無しさん
2005/10/12(水) 07:15:37ひきすうと読まないと
因数と勘違いしてしまうから、たぶんそう読む事にしたんだろうね。
0498デフォルトの名無しさん
2005/10/12(水) 07:17:060499デフォルトの名無しさん
2005/10/12(水) 07:51:580500デフォルトの名無しさん
2005/10/12(水) 08:00:130501デフォルトの名無しさん
2005/10/12(水) 08:18:24↑この関数タイプするのマンドクサイんですが。
0502デフォルトの名無しさん
2005/10/12(水) 08:25:240503デフォルトの名無しさん
2005/10/12(水) 08:26:040504デフォルトの名無しさん
2005/10/12(水) 11:00:090505デフォルトの名無しさん
2005/10/12(水) 11:38:13ルフォントと思われる「HG 丸ゴシック M-PRO」や「HG 正楷書体 M-PRO」も列挙され
てしまいます。実用上は EnumFontsProc を呼び出す側でこれらの文字列を判断して
除けばいいのでしょうが、FIXED_PITCHを指定しているのになぜ プロポーショナルフォ
ントがリストアップされるのかわかりません。
function EnumFontsProc(var LogFont: TLogFont; var TextMetric:
TTextMetric; FontType: Integer; Data: Pointer): Integer; stdcall;
begin
if (LogFont.lfPitchAndFamily and 3) = FIXED_PITCH then
TStrings(Data).Add(LogFont.lfFaceName);
Result := 1;
end;
0506デフォルトの名無しさん
2005/10/12(水) 11:57:51> プロポーショナルフォントと思われる「HG 丸ゴシック M-PRO」
どうしてそう思ったの?
0507デフォルトの名無しさん
2005/10/12(水) 12:07:520508デフォルトの名無しさん
2005/10/12(水) 15:54:18wbWWW.Silent := True;
wbWWW.Navigate(openURL);
wbWWW.Refresh;
とやると、
「エラーを特定できません。」というエラーが発生します。
どうしたものでしょうか?
0509デフォルトの名無しさん
2005/10/12(水) 16:08:14非同期で動いているNavigateが完了する前にRefreshを呼ぶからぢゃない?
てか、Refreshいらんだろ。
0510デフォルトの名無しさん
2005/10/12(水) 16:21:23なるほど。Refreshしないとページが表示されないのですが
それが問題ということですね。
0511デフォルトの名無しさん
2005/10/12(水) 17:46:02でメモリーリークが発生して困っています。
FileLoad を1回呼んで終了するとファイルのノード数に関わらず1回だけ、それ以上繰
り返して終了するとファイルのノード数が加算された数だけメモリーリークするようです。
ClearTreeに何か問題があるのでしょうか?
関係のあるところだけ抜き出しますがちょっと長いので
ttp://kuroneko-upload.no-ip.info/uploader/sn/upload.html
にアップします(up0862.txt[DLKey は 1234)。
0512デフォルトの名無しさん
2005/10/12(水) 18:40:23> while Items.Count <> 0 do
> begin //ノードが保持していたデータオブジェクトを確実に廃棄
> if Items[0].Data <> nil then
> TMyNode(Items[0].Data).Free;
> Items.Delete(Items[0]);
> end;
これ、遅い上に危険。
Items[0].Deleteが Items[0] の子以下も全て削除するから
子の Data が破棄されない。
for i := 0 to Items.Count - 1 do
TMyNode(Items[i].Data).Free;
Items.Clear
にすれ。
0513デフォルトの名無しさん
2005/10/12(水) 18:42:520514デフォルトの名無しさん
2005/10/12(水) 20:08:37OnDeletionに
if Assigned(Node.Data) then
TMyNode(Node.Data).Free;
と書いておけばおk
0515511
2005/10/13(木) 06:13:00>>514
ありがとうございました。
> Items[0].Deleteが Items[0] の子以下も全て削除するから
> 子の Data が破棄されない。
なるほど、そうなんですね。
ところで>>514さんの OnDeletion を使う方法だと
TreeView1.Items.Clear
だけを実行すればいいわけですね。
0516デフォルトの名無しさん
2005/10/13(木) 09:42:32やはり、TRadioButtonを使うべきでしょうか?
0517デフォルトの名無しさん
2005/10/13(木) 10:05:36無理
TRadioButtonを置いて個々を管理するしかない
そんときは下のような関数を用意しておいて1度全部Falseにして
必要なものだけTrueにするのがスマートでいいと思う
procedure SetEnabledAll(Control: TWinControl; AEnabled: Boolean);
var
c: TControl;
i: Integer;
begin
Control.Enabled := AEnabled;
for i := 0 to Control.ControlCount-1 do
begin
c := Control.Controls[i];
if c is TWinControl then
SetEnabledAll(TWinControl(c), AEnabled)
else
c.Enabled := AEnabled;
end;
end;
0518デフォルトの名無しさん
2005/10/13(木) 10:54:27TRadioGroup.Controls[] を通じて個々のラジオボタンにアクセスできるよ。
例えばキャプションが 'ccc' なのを Enabled := false にするには
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
begin
for i := 0 to RadioGroup1.ControlCount-1 do
if TRadioButton(RadioGroup1.Controls[i]).Caption = 'ccc' then
TRadioButton(RadioGroup1.Controls[i]).Enabled := false;
end;
0519デフォルトの名無しさん
2005/10/13(木) 11:02:38WebBrowserだけを別のフォームにおいて入力部分と表示部分を分けたブラウザを作りたいと考えているのですが
実行しボタンを押してもForm2が自動で開いてくれません。どのようにすればボタンを押すことによりForm2を表示させることができるのか教えてください。よろしくお願いします。
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleCtrls, SHDocVw_TLB;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Label1: TLabel;
WebBrowser1: TWebBrowser;
procedure Button1Click(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Form1.WebBrowser1.Navigate(Edit1.Text);
Form2.WebBrowser1.Navigate(Edit1.Text); //ここの部分の処理 別ウィンドウを開かせたい
end;
end.
0520デフォルトの名無しさん
2005/10/13(木) 11:06:47Form2.Show とか Form2.ShowModal とかのメソッドを使う。
0521デフォルトの名無しさん
2005/10/13(木) 11:07:380522デフォルトの名無しさん
2005/10/13(木) 11:08:30Form2を表示するならForm2.Show;
0523デフォルトの名無しさん
2005/10/13(木) 11:11:09自動で開いてくれないのなら手動で開くしかないでしょ。
なぜにそこで指向がストップするんだ?
Form2.WebBrowser1.Navigate(Edit1.Text);
Form2.Show; //追加
0524デフォルトの名無しさん
2005/10/13(木) 11:11:36自動生成してない場合モーダル表示なら
Form2 := TForm2.Create(Self);
try
Form2.ShowModal;
finally
Form2.Release;
end;
モーダル表示しないなら
From2のonCloseイベントに
Action = caFree;
を記述
0525523
2005/10/13(木) 11:12:040526デフォルトの名無しさん
2005/10/13(木) 11:12:36わかりづらいことをしてすみません。解決いたしました ありがとうございます。
0527デフォルトの名無しさん
2005/10/13(木) 11:14:360528デフォルトの名無しさん
2005/10/13(木) 11:16:510529デフォルトの名無しさん
2005/10/13(木) 11:18:380530デフォルトの名無しさん
2005/10/13(木) 11:25:200531デフォルトの名無しさん
2005/10/13(木) 13:09:400532デフォルトの名無しさん
2005/10/13(木) 13:21:240533デフォルトの名無しさん
2005/10/13(木) 13:23:03Val() だと例外でなくても判断できる。
0534デフォルトの名無しさん
2005/10/13(木) 13:26:450535デフォルトの名無しさん
2005/10/13(木) 13:29:040536デフォルトの名無しさん
2005/10/13(木) 13:32:250537デフォルトの名無しさん
2005/10/13(木) 13:35:12var
I,Code:Integer;
begin
Val(Edit1.Text, I, Code);
if code <> 0 then
begin
Edit1.Text := '0';
end;
0538デフォルトの名無しさん
2005/10/13(木) 14:30:35固定する方法はありますか?
0539デフォルトの名無しさん
2005/10/13(木) 14:32:030540デフォルトの名無しさん
2005/10/13(木) 14:32:06Form1を選択した状態でオブジェクト インスペクタのプロパティにあるBorderStyleをbsSingleに
変更すれば良い。
0541デフォルトの名無しさん
2005/10/13(木) 14:36:090543デフォルトの名無しさん
2005/10/13(木) 15:37:23Shift: TShiftState);
begin
if ( Key = VK_DELETE ) and ( ssNone in Shift ) then
begin
end;
end;
っでssNone in ShiftとssAlt, ssCtrlだけ入れたいのですが、
どう記述したらよいのでしょうか?
全部andでつなげるしかないのでしょうか?
0544デフォルトの名無しさん
2005/10/13(木) 15:50:26ヘルプみると書いてあるよ。
0545デフォルトの名無しさん
2005/10/13(木) 15:53:490546デフォルトの名無しさん
2005/10/13(木) 16:03:32Shift = [ssShift, ssAlt, ssCtrl] こう使う。
inは一個しか駄目だったと思う。
0547デフォルトの名無しさん
2005/10/13(木) 16:10:590548デフォルトの名無しさん
2005/10/13(木) 16:13:56等号の部分を >= に変えれば部分集合 つまり、含まれていればになるけど、コレはみんなあんまり使わないみたいだから
in を andで書いた方が判りやすいかもね
>>547
配列の種類によっては FillChar とかで出来るけど、可読性が悪いからお勧めじゃない
素直に書いてもコンパイラだから効率悪くないから
0549デフォルトの名無しさん
2005/10/13(木) 16:14:300550デフォルトの名無しさん
2005/10/13(木) 16:15:18ありがとう
0551デフォルトの名無しさん
2005/10/13(木) 16:17:190552デフォルトの名無しさん
2005/10/13(木) 16:23:11for i・・・・
a[i]:= 0;
とかやったらさすがに遅いだろw
0553548
2005/10/13(木) 16:28:28高速が好みなら MMXで64bit バージョンとか CPUによっては128bitバージョンに挑戦しては?
>>552 それでも aが32bitなら、そんなに変わらないと思うけど?
0554デフォルトの名無しさん
2005/10/13(木) 16:35:07FillChar が可読性悪いから、少々遅くてもループで初期化せよ、ってことに
反応しただけでなんで「MMXで64bit バージョンとか CPUによっては
128bitバージョンに挑戦」しなきゃならんの?
FillChar 使える場合は、可読性は FillChar のほうがいいと思うよ。
単機能なんだから何やってるかすぐわかるし。
0555デフォルトの名無しさん
2005/10/13(木) 16:40:51for i := 0 to Length(Array) -1 do
Array[i] := #0;
どっちが見やすいのは一目瞭然だと思うけど
0557デフォルトの名無しさん
2005/10/13(木) 16:47:350558548
2005/10/13(木) 16:49:08Systemにある関数ってそんなの多いような・・・・
0559デフォルトの名無しさん
2005/10/13(木) 16:51:28それは、要素がひとつだけだからね。
integer のフィールドが20個あるレコード型の配列を初期化してご覧
0560548
2005/10/13(木) 16:54:56レコード型だと、文字列なんかを後からメンバに加えたりした場合にアレだから
なおさら FillCharはお勧め出来ないけどなあ・・・・
0561デフォルトの名無しさん
2005/10/13(木) 16:55:450562名無し募集中。。。
2005/10/13(木) 16:57:23type
0563548
2005/10/13(木) 16:59:37でも、コード規模が大きくなって、3年後で変更なんて事が増えてくると、
for i:= Low(a) to High(a) do SetUpXXXX( a[i] );
なんて 感じの手続きで処理させた方が、多少のコストを払っても
後から効いてくるって事なんだよ
0564デフォルトの名無しさん
2005/10/13(木) 17:08:28>>547 が三年後に変更するかどうかなんか誰にも分からないだろうに。
その論理だと、高速で1行で済むような関数を使うより、メンテが楽で簡単な論理で
済ませられるほうを使え、とかなるけど、どうよ?
0565デフォルトの名無しさん
2005/10/13(木) 17:10:030566デフォルトの名無しさん
2005/10/13(木) 17:11:460567548
2005/10/13(木) 17:12:30急いでるときはなおさら、『メンテが楽で簡単な論理で済ませられるほうを使え』 が正解になる事が多いよ。
速度そのものはアルゴリズムの工夫の方が結局は効いてくるから
実装はコードが長くなっても出来るだけメンテが楽で簡単な論理を組み合わせる方がいい。
これは、コードコピペを薦めてるんじゃなくて、少なくとも構造化をした上でって意味だよ
0568デフォルトの名無しさん
2005/10/13(木) 17:14:00ここは質問スレ。
0569デフォルトの名無しさん
2005/10/13(木) 17:20:560570デフォルトの名無しさん
2005/10/14(金) 00:03:36それに、小数点を追加したいと思いまして、マニュアルのキーより VK_DECIMAL〔.〕キー(テンキー)
というの発見したのですが、小数点 . では反応しません。 どう書けばいいのでしょうか?
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in ['0'..'9',Chr(VK_BACK),Chr(VK_SPACE),Shr(VK_DECIMAL)]) then Key := #0;
end;
0571デフォルトの名無しさん
2005/10/14(金) 00:05:240572デフォルトの名無しさん
2005/10/14(金) 00:13:120573デフォルトの名無しさん
2005/10/14(金) 00:17:10できました。ありがとうございました。
0574デフォルトの名無しさん
2005/10/14(金) 03:18:560575デフォルトの名無しさん
2005/10/14(金) 12:42:10Label1.Font.Size := 9;
この使い方だとえらーがでます。
どうやったら変わりますでしょうか?
0576デフォルトの名無しさん
2005/10/14(金) 12:55:130577デフォルトの名無しさん
2005/10/14(金) 13:09:030578デフォルトの名無しさん
2005/10/14(金) 13:51:24エラーは、実行するとパネルがでて、エラーメッセージはとくになく・・・。
お騒がせしました。
0579デフォルトの名無しさん
2005/10/14(金) 15:22:02delphi6より使いやすいですか?
0580デフォルトの名無しさん
2005/10/14(金) 16:18:580581デフォルトの名無しさん
2005/10/14(金) 19:48:47http://pc8.2ch.net/test/read.cgi/tech/1121600038/
0582デフォルトの名無しさん
2005/10/14(金) 19:49:580583デフォルトの名無しさん
2005/10/14(金) 19:51:330584デフォルトの名無しさん
2005/10/15(土) 00:32:10「Edit1に1を入力すると'これは1です’とlabel1に表示し、
1以外を入力すると’これは1以外です'と表示させる」
という練習問題があるのですが、その記述方法は
i := integer; と書いた後に i := StrToInt(Edit1.text) と記載して、
その後にif文を続けています。
Edit1には0や1などの数字を打ち込むのに、なぜi := StrToIntという風に
文字列⇒整数への変換が必要なのでしょうか?
Edit1には整数しか入力できないという限定が特にされていないから、
1や0が入力されていてもそれを一旦「文字」と捉えて、その後に改めて
整数型に変換しないといけないということでしょうか?
教えてください。よろしくお願いします。
0585デフォルトの名無しさん
2005/10/15(土) 00:34:380586デフォルトの名無しさん
2005/10/15(土) 01:16:07のように文字として判断することもできるよ。
0587デフォルトの名無しさん
2005/10/15(土) 01:26:25Integerの値はそのままRealの変数に代入できる。
逆は必ずしも成り立たないので、切り捨てとか切り上げとか四捨五入とか
変換関数を選んでかまさないといけない。
テキスト(文字列)から整数への対応も、一意じゃないでしょ?
もしかしたら16進数で入力されてるかもしれないし、補数表現かもしれないし、区別はつかないし。StrToIntとは別の解釈を行う変換ルーチンは当然存在できる。
(整数と文字列ではメモリ上の表現が著しく異なるというのもある)
まあ勝手に変換してくれる言語もあるけれど、Pascalはその辺きちんとしてるから。
0588584
2005/10/15(土) 01:53:48textの中に書き込むものは、見た目が数字でも何でも
全部文字列のものなんですね。
pascal・・・もうちょっと成長してから調べます(,,゚Д゚)
0589デフォルトの名無しさん
2005/10/15(土) 02:42:480590デフォルトの名無しさん
2005/10/15(土) 21:38:59とりあえずShowScrollBarでも消えることは消えるんですが、
変更がある度に呼び出してもかなりスクロールバーがちらついてしまいます。
0591デフォルトの名無しさん
2005/10/15(土) 21:40:510592デフォルトの名無しさん
2005/10/15(土) 22:23:12TreeViewをパネルの中にでも置いて、スクロールバーの分だけパネルのサイズを小さくしておく。
(面倒)
CreateParamsオーバーライドしてウィンドウスタイルのWS_VSCROLL、WS_HSCROLLを取る
0593デフォルトの名無しさん
2005/10/15(土) 22:26:480594デフォルトの名無しさん
2005/10/15(土) 22:31:33uses
CommCtrl;
procedure TForm1.FormCreate(Sender: TObject);
var
style: LongInt;
begin
style := GetWindowLong(TreeView1.Handle,GWL_STYLE);
SetWindowLong(TreeView1.Handle, GWL_STYLE, style or TVS_NOSCROLL);
end;
0595デフォルトの名無しさん
2005/10/15(土) 23:34:39別のスクロールバーを使うため、TreeViewのものが不要なので。
>>592
>>593
>>594
WS_VSCROLL、WS_HSCROLLは質問の前に試していたのですが、やりかたがまずいのか効果無しでした。
TVS_NOSCROLLの追加でうまくいったようです。
ありがとうございます。
0596デフォルトの名無しさん
2005/10/17(月) 09:53:55サブルーチンにあたるものが欲しくていろいろ参考書に当たってみたのですが
作成の仕方を書いてある文章が見つかりませんでした。
【環境】
言語:Delphi6 personal
OS:Windows2000pro
【やったこと】
--------------------------------------------------------------
(略)
type
TTrance = class(TForm)
(略)
Button3: TButton;
procedure keisan(Sender: TObject); ※これをサブルーチンにしたい
(その他関数)
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
0597デフォルトの名無しさん
2005/10/17(月) 09:55:11var
Trance: TTrance;
implementation
{$R *.dfm}
procedure keisan(Sender: TObject);
var
i:interger;
begin
end;
end.
-------------------------------------------------------------
【欲しい関数】C言語において
main()
{a=keisan(8);printf("%d",a);}
int keisan(int i)
{return (i*2);}
例なのですがこんな関数が作りたいわけです。
どうかお願いします。
0598デフォルトの名無しさん
2005/10/17(月) 09:58:01本当にプログラマだったのか・・?
0599デフォルトの名無しさん
2005/10/17(月) 09:59:530600デフォルトの名無しさん
2005/10/17(月) 10:00:35どういう事?methodでは具合悪いのか?
ほんとにCやってたの?
別でヘッダーと関数書いたらいいじゃん。
procedure keisan(Sender: TObject);
0601デフォルトの名無しさん
2005/10/17(月) 10:01:44function TForm1.keisan(const Value: Integer): Integer;
begin
Result:= Value * 2;
end;
0602デフォルトの名無しさん
2005/10/17(月) 10:38:48それってfunctionじゃなくてprocedureを指す言葉なの?
0603デフォルトの名無しさん
2005/10/17(月) 10:45:00BASICのサブルーチンなら戻り値ないからprocedureだな。
0604デフォルトの名無しさん
2005/10/17(月) 10:56:41そうなんですか。勉強になりました。
ボコスカグローバル変数が出来るのはその為なんですね。
0605デフォルトの名無しさん
2005/10/17(月) 13:30:150606デフォルトの名無しさん
2005/10/17(月) 13:35:500607デフォルトの名無しさん
2005/10/17(月) 13:46:52他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
Delphi使いが優しくコメントを返しますが、
お礼はDelphiの布教と初心者の救済をお願いします。
0608596
2005/10/17(月) 15:38:13そうか、functionか。
DOS時代のプログラマだったので新しい言語のことを全く知らない状態でした。
めんどくさくなったなぁ・・・。
0609デフォルトの名無しさん
2005/10/17(月) 16:13:21この中で特定のアドレスからの接続をこのアプリケーションから
強制的に切断するようなことは可能でしょうか?
0610デフォルトの名無しさん
2005/10/17(月) 16:22:20http://pc8.2ch.net/test/read.cgi/tech/1128951330/l50
池。
0611デフォルトの名無しさん
2005/10/17(月) 16:25:07APIスレよりこちらのほうが神クラスの技術者が多いので・・・
0612デフォルトの名無しさん
2005/10/17(月) 17:02:47まあCよりキータイプ数多いのは事実だけれども
それはそれでデメリットだけじゃないから慣れるしかない。
0613デフォルトの名無しさん
2005/10/17(月) 17:55:35関係ない。
スレ違いだと言っている。
0614デフォルトの名無しさん
2005/10/18(火) 02:27:30PascalはDOS以前からあったというか…
0615デフォルトの名無しさん
2005/10/18(火) 06:07:450616デフォルトの名無しさん
2005/10/18(火) 08:24:300617デフォルトの名無しさん
2005/10/18(火) 17:07:22List:=TObjectList.Create;
for i:= 0 to 2 do
begin
SG:=TStringGrid.Create(self);
SG.Parent:=self;
SG.Left:=0;
SG.Top:=i*120;
List.Add(SG);
end;
で
Destroy時に TObjectList.freeにしているが、先に作ったTStringGridはFreeにしなくても大丈夫なんでしょうか?
0618デフォルトの名無しさん
2005/10/18(火) 17:10:01コンストラクタの引数AOwnerにself(=Form1)を渡すことで
開放の責任はselfが負うようになって明示的な開放は不要になるという
TCompnentクラスに共通する性質があるのです。
0619デフォルトの名無しさん
2005/10/18(火) 17:12:24じゃ〜TObjectの継承のものはTObjectListに入れても
Freeしないといけないのですか?
0620デフォルトの名無しさん
2005/10/18(火) 17:14:46Create(True)としてやるかObjectList.OwnsObjects := True;とすると
リストを開放する際にぶら下がっているオブジェクトも開放する機能があります。
0621デフォルトの名無しさん
2005/10/18(火) 17:20:09TObjectList.Create(True)としておけば特にFreeを考えなくても良いと言う事ですね。
ありがとうございます。
TObjectList.Delete()に関しても同じように考えてよいのでしょうか?
0622デフォルトの名無しさん
2005/10/18(火) 17:57:200623デフォルトの名無しさん
2005/10/18(火) 18:46:36HELP嫁
0624デフォルトの名無しさん
2005/10/18(火) 18:47:38Taaa = class(TObject)で作ったもので試してみました。
TObjectList.Delete();した後、Taaa で作ったインスタンスに書き込みしようとして
エラーが出ました。
TObjectList.Delete();でインスタンスは消えるみたいでした。
0625デフォルトの名無しさん
2005/10/18(火) 22:32:24例えば、以下のコードだとMemCheckが反応しません
procedure Hoge;
begin
raise
TObject.Create;
end;
0626デフォルトの名無しさん
2005/10/18(火) 23:13:170627デフォルトの名無しさん
2005/10/18(火) 23:20:500628デフォルトの名無しさん
2005/10/19(水) 00:15:24レスありがとうございます
raiseでは自動解放されないのですね
0629デフォルトの名無しさん
2005/10/19(水) 03:35:43日本語のSubjectでちょっと長いやつ(エンコード後に2行になるやつ)
だと変なことになります。
例) 日本語おかしいよ → 日本語おかし 日本語おかしいよ
で、Googleでけっこう探したところ、そこそこ有名なバグらしいのですが、
あちこちで解決策として示されているリンク先がサイト消滅していてどう
しても答えにたどり着けません。
解決ズバリか、参考になるサイトをおしえてもらえませんか?
0630デフォルトの名無しさん
2005/10/19(水) 04:10:08http://pc8.2ch.net/test/read.cgi/tech/1093654251/
0631デフォルトの名無しさん
2005/10/19(水) 04:14:06ttp://www.delphi-gems.com/ThemeManager.php の
Windows XP Theme Managerをインストールしましたが、
ttp://kuraba-web.hp.infoseek.co.jp/cgi-bin/upload/source/up1159.png
のようにステータスバーはきちんとなりませんでした。
ステータスバーをきちんと対応させるにはどうすればよいでしょうか?
環境はdelphi6personal + XPsp1 です。よろしくお願いします。
0632デフォルトの名無しさん
2005/10/19(水) 04:20:16raise では解放されないというより、 raise で作成されたものが、
どこかにあるはずの exceptでキャッチされる
で、このexceptで解放される。
0633デフォルトの名無しさん
2005/10/19(水) 07:41:51ログ見てタイミングを調べてみるといいかも
constructor TMyObject.Create;
begin
inherited;
Writeln(ClassName, ' created');
end;
destructor TMyObject.Destroy;
begin
Writeln(ClassName, ' destroyed');
inherited;
end;
0634デフォルトの名無しさん
2005/10/19(水) 07:51:21それが嫌な場合TThread使うのが定石?
0635デフォルトの名無しさん
2005/10/19(水) 07:57:260636デフォルトの名無しさん
2005/10/19(水) 08:12:19それのステータスバーの描画方法がまちがってるんじゃねぇの?
ソースを追え。
0637デフォルトの名無しさん
2005/10/19(水) 08:59:01メッセージはちゃんと処理されてるけど
ApplicationProcessMessagesは制御を返さないの?
後者の動作はどうしようもないの?
0638デフォルトの名無しさん
2005/10/19(水) 10:05:400639628
2005/10/19(水) 11:01:02凄い、本当だ
派生クラスのdestructorにWriteln(F, 'HOGE')を仕込んだところ、
625のコードでもちゃんとHOGEが出力されました
喉の小骨取れました、本当ありがとうございました
0640いまだDelphi5
2005/10/19(水) 14:15:56また Delphi6以降に TTreeView が著しく改善されたところがあるでしょうか?
Delphi5ではノードが多くなるとTreeView同士のコピー
TreeView2.Items.Assign(TreeView1.Items);
が遅くなるので、そのへんが改善されていればバージョンアップしたいのです。
0641デフォルトの名無しさん
2005/10/19(水) 15:15:52Delphi2005を使ってます。
1:多の関係にある明細付きの納品書を入力する画面を作っています。
TQueryコンポーネントを使って、
1側のレコードが移動すると、
自動的に多側のレコードが対応するものに切り替わるところまで作れたのですが・・
多側のレコードを追加する時に、
自動的に1側のキーをセットしたいのですが、
どうすればよいのでしょうか?
TUpdateSQLのInsertSQLに :1側のキー項目名 と書いたのですが、
「型がわかりません」とエラーがでました
よろしくおねがいします。
0642デフォルトの名無しさん
2005/10/19(水) 20:10:49それは型を指定していないからじゃないか。
FieldByName(項目名).asStringみたいな事を書くのでは。
0643デフォルトの名無しさん
2005/10/19(水) 20:28:22> AddNodeが追加されたのはどのバージョンからでしょうか?
今見たらDelphi 7にはあります。
0644デフォルトの名無しさん
2005/10/19(水) 20:31:01> AddNodeが追加されたのはどのバージョンからでしょうか?
今見たらDelphi 6にはあります。
0645デフォルトの名無しさん
2005/10/19(水) 20:33:38どうでしょう?
http://www.lischke-online.de/VirtualTreeview/
0646デフォルトの名無しさん
2005/10/20(木) 00:25:440647デフォルトの名無しさん
2005/10/20(木) 00:26:340648646
2005/10/20(木) 00:34:14素早い回答ありがとうございました。
0649デフォルトの名無しさん
2005/10/20(木) 07:20:58ご教授くださいませ。
0650デフォルトの名無しさん
2005/10/20(木) 07:25:40GetCurrentDirectory、ShellExecute
0651デフォルトの名無しさん
2005/10/20(木) 07:34:27ShellExecuteでディレクトリだけ渡せばよいのでしょうか?
びくーり。
0652デフォルトの名無しさん
2005/10/20(木) 09:43:37/* Delphi2006対応 */
void __fastcall TForm1::Button1Click(TObject *Sender)
{
char path[MAX_PATH];
GetCurrentDirectory(sizeof(path), path);
ShellExecute(Handle, NULL, path, NULL, path, SW_SHOW);
}
0653デフォルトの名無しさん
2005/10/20(木) 10:44:28変更したいと思っています。
どこを修正すればよいのでしょうか。
0654デフォルトの名無しさん
2005/10/20(木) 11:03:58デフォルトのフォント周りのプロパティを変更するんだよ。いつ変更したらよいかの
方が難しいと思うが。
0655デフォルトの名無しさん
2005/10/20(木) 13:11:55特定の処理をおこないたい場合はどのイベントを使えばよろしいのでしょうか?
0656デフォルトの名無しさん
2005/10/20(木) 13:16:24コンストラクタoverrideして
constructor TMyEdit.Create(AOwner: TComponent);
begin
inherited Create
Font.Color := crRed;
end;
とかすればいいんじゃないの。
0657デフォルトの名無しさん
2005/10/20(木) 13:30:12文法がわかんない
0658デフォルトの名無しさん
2005/10/20(木) 13:38:03Editに入力されたキーを表示する
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
ShowMessage('Key = [' + Key + ']');
end;
0659デフォルトの名無しさん
2005/10/20(木) 13:41:08procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case Key of
'0'..'9': Key := #0 // 数字なら捨てる
else Key := Upcase(Key); // アルファベットなら大文字化
end;
end;
0660デフォルトの名無しさん
2005/10/20(木) 13:46:59procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
//バックスペースキーを使用不可にする
if Key = Chr(VK_BACK) then
Key := #0;
end;
0661デフォルトの名無しさん
2005/10/20(木) 14:01:01Editでしか使えない?
描画した図形をあるキーを押したら少し移動するみたいな使い方をしたいんだけど
0662デフォルトの名無しさん
2005/10/20(木) 14:06:40TWinControlならほぼすべて使えるから
KeyPreview:=TrueしてFormでキー入力をトラップするのが楽かも。
0663デフォルトの名無しさん
2005/10/20(木) 14:22:29フォームのOnKeyPressイベントに下のような処理を追加する。
後は十字キーが押された時の処理を書けばいい
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
case Key of
Char(VK_UP) : //図形上へ移動;
Char(VK_DOWN) : //図形下へ移動;
Char(VK_LEFT) : //図形左へ移動;
Char(VK_RIGHT): //図形右へ移動;
end;
end;
0664デフォルトの名無しさん
2005/10/20(木) 14:48:01早いレス、どうもです
家に帰ったら、さっそくやってみます
次の授業が始まりそうで、これ以上学校でやれないのが悔しい
0665デフォルトの名無しさん
2005/10/20(木) 16:39:03他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
Delphi使いが優しくコメントを返しますが、
お礼はDelphiの布教と初心者の救済をお願いします。
0666デフォルトの名無しさん
2005/10/20(木) 19:58:590667629
2005/10/20(木) 22:38:02もしかしたら他にも興味あるかたがいるかもしれないのでご報告。
> 日本語のSubjectでちょっと長いやつ(エンコード後に2行になるやつ)
> だと変なことになります。
> 例) 日本語おかしいよ → 日本語おかし 日本語おかしいよ
IdCoderHeader.pas
function DecodeHeader(Header: string):string;
(略)
begin
s := ''; ←追加
while Length(substring) >= 4 do
いじょ
0668デフォルトの名無しさん
2005/10/21(金) 07:20:28Delphiは6Personalです。
エンコードリストにTListBoxを使っているんですが、
デスクトップなどからD&Dしたときの処理に困っています。
・D&Dしたファイルが.wav、.ogg、.mp3なら追加。
それ以外なら追加しない。
・フォルダがD&Dされた場合、フォルダ内の.wav、.og(ryを検索して追加。
発見できなければShowMessage('使えるファイルねぇよ!(`Д´)プンプン');
お願いします。
0669デフォルトの名無しさん
2005/10/21(金) 07:31:240670デフォルトの名無しさん
2005/10/21(金) 07:33:26Q1 D&Dはどうやるのですか?
Q2 拡張子の比較はどうやるのですか?
Q3 フォルダの識別はどうやるのですか?
Q4 フォルダ内のファイル一覧はどうやるのですか?
といったところです。
お願いします。
0671デフォルトの名無しさん
2005/10/21(金) 07:41:37A2 ケツの4文字
A3 ↑
A4 findfirst next
人に教えられる程スキルを持った人間ではないけどこんな感じ?
0672デフォルトの名無しさん
2005/10/21(金) 07:51:22['.wav', '.ogg', '.mp3']) then
ShowMessage('sound file');
0673668
2005/10/21(金) 08:12:59複数ファイルがD&Dされると渡されるファイル名はTStringなので、
その中からサウンドファイルを抜き出す→リストへ追加という動作をさせたいと思ってます。
フォルダ判別に関しては解決しました。
ありがとうございました。
0674668
2005/10/21(金) 08:22:13TString→TStrings
0675668
2005/10/21(金) 08:51:48ListBoxの各行にアクセス→判別→処理
この繰り返しです。
スレ汚し失礼しました。
0676デフォルトの名無しさん
2005/10/21(金) 10:06:55TWebBrowser.Cursor := crNone;
っとしているのですが、Navigate('http://localhost/');などとすると
マウスカーソルが出てしまいます。
TWebBrowserのマウスカーソルを出ないようにする方法ありますでしょうか?
0677デフォルトの名無しさん
2005/10/21(金) 22:52:03こちらで質問させてください。
Googleで検索しても見つからないのですが、
指定したフォルダの下層フォルダ一覧を調べるにはどの関数を
使えばいいでしょうか。
0678デフォルトの名無しさん
2005/10/21(金) 23:01:01FindFirst,FindNext,FindClose辺りの関数でゴリゴリと書く。
フォルダの階層がいくつもあって、それらも処理したければ再帰処理で繰り返す。
0679デフォルトの名無しさん
2005/10/22(土) 08:43:43変更不可でしょうか?
0680デフォルトの名無しさん
2005/10/22(土) 08:47:09変更するには独自描写が必要だった気がする
0681デフォルトの名無しさん
2005/10/22(土) 08:47:540682デフォルトの名無しさん
2005/10/22(土) 09:52:53自分で描けばできるけど、キャプションも自分で描く必要有り。
詳しくはオーナードローで。
>681
VBはランタイム自体が独自描画している(RADを実現するためらしい)
その副作用で色が指定できるになった。
0683デフォルトの名無しさん
2005/10/22(土) 10:02:31BorlandのHPにDelphi6 Presonalのアップデートパッチがあるのですが、
何度やっても接続に失敗します。
Irvineをつかってもダメでした。
この事項は既出でしょうか?
対処法のご教授願います。
0684デフォルトの名無しさん
2005/10/22(土) 10:37:05IEでダメならFTPクライアントでftp://ftp.borland.co.jp/pub/delphi/から取ってくる。
それかIEのオプションでFTPのパッシブモードを有効にしてみる
0685デフォルトの名無しさん
2005/10/22(土) 10:38:150686デフォルトの名無しさん
2005/10/22(土) 14:33:12回答ありがとうございます。
が、いずれの方法でもダメでした。
FFFTP…「"ftp://ftp.bor(略"が見つかりません」
IE…パッシブモードは既にON
FW…port20,21は通過
コマンドプロンプトでpingしてみると「ホストが見つかりません」になるので、
サーバーが停止しているようです。
元を正せば、エラー「classes.pasが見つかりません」を解決したいだけなんですが。
0687デフォルトの名無しさん
2005/10/22(土) 14:41:26今、見てみたけど問題なく繋がるけどね。
>FFFTP…「"ftp://ftp.bor(略"が見つかりません」
ってことは、ホスト名に ftp://ftp.borland... と指定しているようだけど
これは間違い。ftp.borland...が正解。
まさかと思うけど ping の時も ftp://ftp.borland... としちゃってる?
0688デフォルトの名無しさん
2005/10/22(土) 15:22:46常駐していたPeerGuardianを停止したところ、即繋がりました。
ご迷惑をおかけしました。
LAN・USBの二重コードで吊ってきますo...rz
0689デフォルトの名無しさん
2005/10/22(土) 16:26:000690デフォルトの名無しさん
2005/10/22(土) 21:59:25もう一つのフォーム(Editの欄が無いフォーム)にWebbrowserを表示させるように連動(?)
させたいのですが、どう記述すべきでしょうか。
0691デフォルトの名無しさん
2005/10/22(土) 23:28:310692デフォルトの名無しさん
2005/10/22(土) 23:53:17>>519-526辺りを参照してみれば?
0693デフォルトの名無しさん
2005/10/23(日) 02:20:20どう答えれば良いのか分からん。
どういう答えを期待してるのか?
「ソース出して」ってこと?
0694ななしへたぐらま ◆XcB18Bks.Y
2005/10/23(日) 10:29:50色つきボタンは以下のサイトなどでいろいろ公開されているので
これらの中から気に入ったのを使うのも一手かも.
Delphian World
http://www6.airnet.ne.jp/~sone_san/delphi/
0695デフォルトの名無しさん
2005/10/23(日) 17:24:10とりあえず、Form1のEdit1に入力された文字列をForm2のLabel1に表示させるコードは書けるのかな。
0697デフォルトの名無しさん
2005/10/23(日) 23:38:41ところがViewStyleをvsReportにしたTListViewを設置しているフォームが開かれた瞬間
「モジュール 'kernel32.dll' のアドレス 77E683EC でアドレス 00467088 に対する書き込み違反がおきました。.」
と言う内容のエラーダイアログが表示されるのですが、何故でしょうか?
違うマシンで試しても同じ結果に至ったので恐らくDelphi側の問題だとは思うんですが・・
0698697
2005/10/23(日) 23:46:48[manifest]
アプリケーションをWindowsXPスタイルにする方法に、manifestファイルを用いる方法がある。
しかしこの方法では、TListViewを用いているアプリケーションでは kernel32.dll が読み込み違反エラーを吐いて
起動に失敗する場合がある。(Delphi,C++Builderで作成されたアプリケーションの場合)
(回避方法)
→TListViewのカラムヘッダにイメージを入れると正常に起動される。
または、カラムヘッダを表示しないようにする。
ググってみたらこんな物を見つけたんですが、これ以外に回避法はないんでしょうか?
0699186
2005/10/23(日) 23:54:310700デフォルトの名無しさん
2005/10/24(月) 00:21:50うまく動きません。
OnChagingでListViewのアイテムを数えて
メモリを確保して、配列に入れて、Nodo.Dataにポインタ
OnChangeでListViewのアイテムをClearして、指定したNode
だったら、配列を数えて、ListViewにItemを追加のですが
treeViewでどのNodeをクリックしても、最初の配列が残ってしまいます
------------------------------------
treeView | ListView
|
rootnode | caption | subitems
┣-aaa |------------
┃ ┣111 <-- |
┃ ┗222 <-- |
┣-bbb |
------------------------------|
よろしくお願いします
0701700
2005/10/24(月) 00:22:39/////////////////////////////////////
type
Pdata = ^TIndexData;
TIndexData =Record
code :string;
index :string;
end;
IndexDataArray = Array of TindexData;
TMainForm = class(TForm)
////////////////////////////////////////
private
{ Private 宣言 }
rootNode : TTreeNode;
//////////////////////////////////////
var
MainForm: TMainForm;
CArray :IndexDataArray;
/////////////////////////////////////////
procedure TMainForm.TreeView1Changing(Sender: TObject; Node: TTreeNode;
var AllowChange: Boolean);
var
c,i : integer;
begin
c := ListView1.Items.count;
0702700
2005/10/24(月) 00:23:30SetLength(CArray,c);
For i := 0 to C-1 do
begin
CArray[i].code :=ListView1.items[i].subitems[0];
CArray[i].index:=ListView1.items[i].caption;
end;
node.Data := addr(CArray);
end;
procedure TMainForm.TreeView1Change(Sender: TObject; Node: TTreeNode);
var
C : integer;
i :integer;
ListItem :TListItem;
begin
ListView.Items.Clear;
if (Node = rootNode) or (Node.Parent = rootNode) then exit;
begin
c:= Length(CArray);
For i := 0 to c-1 do
begin
ListItem :=ListView1.items.add;
ListItem.Caption :=CArray[i].index;
ListItem.SubItems.Add(CArray[i].code);
end;
end;
end;
0703デフォルトの名無しさん
2005/10/24(月) 01:12:290704デフォルトの名無しさん
2005/10/24(月) 01:13:090705デフォルトの名無しさん
2005/10/24(月) 05:58:13あったような記憶があるのですが、そういうのありましたでしょうか?
0706デフォルトの名無しさん
2005/10/24(月) 06:31:200707デフォルトの名無しさん
2005/10/24(月) 06:36:140708デフォルトの名無しさん
2005/10/24(月) 06:46:35よくわかりませんが、ダウンしてみます。ありがとうございました。
0709デフォルトの名無しさん
2005/10/24(月) 07:40:11むかしイロイロと探したが日本語使うとおかしくなるのが多かった。
0710デフォルトの名無しさん
2005/10/24(月) 07:43:150711デフォルトの名無しさん
2005/10/24(月) 09:10:07本末転倒ですが(w
0712デフォルトの名無しさん
2005/10/24(月) 10:03:16小心者の僕も同じですね〜プログラム終了時に消しておけばバレない(マテ
0713デフォルトの名無しさん
2005/10/24(月) 10:04:290714デフォルトの名無しさん
2005/10/24(月) 10:26:100715デフォルトの名無しさん
2005/10/24(月) 11:36:320716デフォルトの名無しさん
2005/10/24(月) 13:16:570717デフォルトの名無しさん
2005/10/24(月) 13:37:18っIndy
0718デフォルトの名無しさん
2005/10/24(月) 17:00:28Indyはちょっと大げさなのでAPIで実装することにしました。
0719デフォルトの名無しさん
2005/10/24(月) 18:26:490720デフォルトの名無しさん
2005/10/24(月) 18:42:580721デフォルトの名無しさん
2005/10/24(月) 19:41:380722デフォルトの名無しさん
2005/10/24(月) 20:04:110723デフォルトの名無しさん
2005/10/24(月) 20:06:270724デフォルトの名無しさん
2005/10/24(月) 22:40:50SleipnirやOperaにあるようなwebページのズームイン・ズームアウト表示がやりたい
んですが、そどうすれば良いんでしょうか。
0725デフォルトの名無しさん
2005/10/24(月) 22:55:51IEの独自拡張を調べなさい
0726デフォルトの名無しさん
2005/10/25(火) 00:06:58プログラミング未経験者で初めて参考書を買って独学をしているのですが、
そのdelphi参考書は「ここはこういう理由でこういう書き方がされている」等の
理由や説明がほとんどなく、例題にあるソースをそのまま自分のパソコンに
打ち込んでいるだけで、「理解している」のではなく「例題をそのまま覚えている」
だけのような気がします。
(私と同じ本を買った人もアマゾンのカスタマーレビューで同じようなことを書いてました・・・。)
みなさんは最初にdelphiを勉強した時は、最初は取り敢えず丸暗記で、後から
内容を理解するという方法だったのでしょうか?それとも1個ずつ理解しながら
勉強していったのでしょうか?
本当に初心者なので、今の丸暗記方式をこのまま続けていってもいいのか心配です。
0727デフォルトの名無しさん
2005/10/25(火) 00:12:45http://pc8.2ch.net/test/read.cgi/tech/1128511700/
0728デフォルトの名無しさん
2005/10/25(火) 00:28:50質問部分には答えよう
オレは丸暗記も1個ずつ理解とやらもしなかった
文法以外は面倒だから覚えず、作りたいものを
サンプル見ながら適当に作っていたら
いつの間にかここで回答者にまわってた
0729デフォルトの名無しさん
2005/10/25(火) 00:34:42自分は、ずーっと前にその段階だったので記憶が定かではないが、最初は操作自体を
覚えるのも重要です。その本は、それだけのものと思って割り切ることが必要です。
でも、どうしてこうなるのか、と考えながら、自分は何が分からないのだろうか、
ということを知ることが重要です。
自分の場合は、*.pas ファイル、つまり、ユニットファイルの構造を理解し始めた
ときから急速に理解がすすんだように思います。OOP も、IDE では設計時に
TForm の派生クラスを作っているんだ、イベントはそのメソッドなんだ、と
分かりはじめたらしめたものです。
その本より優れた入門サイトがけっこうあります。おすすめは「Seventh Delphi」
です。ググって見ればすぐ見つかります。コードと説明の対応をじっくり学ぶと
じわじわと理解が進むことを実感できるようになります。
0730デフォルトの名無しさん
2005/10/25(火) 00:37:56そうは言うけどな、いきなりクラスがどうたらバーチャルがなんたらの説明ば
かりあっても初心者では理解できんよ。確実に。
サンプルを暗記っていうのはまず第一歩としてはいいと思うよ。
んでそれをちょっとづつ改造していくと。そのうち壁にぶつかるからその時に
ぶつかった壁をいっこづつ調べて理解していけばいい。
まあ学習の仕方なんて人それぞれだろうからいちがいには言えんが、俺の
場合はそうだった、という例で参考にしてくれ。
ところでその本のタイトルもあげると先人のアドバイスもつきやすいのでは
ないかな。いくらサンプル丸暗記といってもダメなのとイイやつの差はあるし。
0731726
2005/10/25(火) 01:01:01>>727 そちらの方が適したスレだったかもしれません。すみません。
>>728 作りたいものがあるっていうのは、やはり勉強を進めるには
大きな力になりそうですね。私がしたいことは、私が勤めている会社で
作っているソフトがdelphiで組まれてて、そのソフトがどうして
こういう動きをするのか理解したかったのでした。
>>729 今そこのサイトを拝見させてもらいました。私が買った本よりも
情報量が多くて親切な気がします。これからはそのサイトもみて勉強してみます。
>>730 そうですね。確かにいきなりレベルの高い話をされても理解できなくて
投げ出してしまうかもしれませんね・・・。ちなみに私が買った本は
「delphi はじめの一歩(池田成樹著)」という本です。
池袋の大きな本屋さんを2箇所と、地元の本屋さんを回って、どこでもこの本が
売っていたので、余程支持されている本かと思って購入しました。
0732デフォルトの名無しさん
2005/10/25(火) 01:03:55オレは「Seventh Delphi」とそこを見ながら基本を覚えた
0733デフォルトの名無しさん
2005/10/25(火) 02:53:400734デフォルトの名無しさん
2005/10/25(火) 06:56:44": 1"しか要らないのであればビット位置を値として指定した列挙型のset。
2ビットとか4ビットとか要るのであればシフト演算でなんとかするしかないなあ。
0735デフォルトの名無しさん
2005/10/25(火) 07:11:291ヶ月たって応用が利かないようならプログラマの素質ないからあきらめろ。
プログラマもプロ野球選手と一緒で誰でもなれるようなものじゃない。
コーダーなら誰でもなれるけど。
0736デフォルトの名無しさん
2005/10/25(火) 07:12:310737デフォルトの名無しさん
2005/10/25(火) 08:24:050738デフォルトの名無しさん
2005/10/25(火) 08:26:210739デフォルトの名無しさん
2005/10/25(火) 12:33:580740デフォルトの名無しさん
2005/10/25(火) 12:49:560741デフォルトの名無しさん
2005/10/25(火) 12:51:030742デフォルトの名無しさん
2005/10/25(火) 13:15:530743デフォルトの名無しさん
2005/10/25(火) 13:17:50ちがうでしょ
0744デフォルトの名無しさん
2005/10/25(火) 13:22:29そうなんですか。
でもとりあえず、unitは名前空間のことでいいんですよね。
0745デフォルトの名無しさん
2005/10/25(火) 13:32:45てっきりAPIのTag×××のTかと思ってた
0746デフォルトの名無しさん
2005/10/25(火) 15:00:570747デフォルトの名無しさん
2005/10/25(火) 15:06:420748デフォルトの名無しさん
2005/10/25(火) 15:09:020749デフォルトの名無しさん
2005/10/25(火) 15:12:52が、これが正しいかどうかは知らないよ
0750デフォルトの名無しさん
2005/10/25(火) 15:49:54Delphiの中の人の発言はないのか?
0751デフォルトの名無しさん
2005/10/25(火) 15:50:57派遣会社からDelphiとOracleの仕事どうですかって言われたよ。
javarerの漏れにはまったくわからない…
0752デフォルトの名無しさん
2005/10/25(火) 15:54:080753デフォルトの名無しさん
2005/10/25(火) 15:55:52それ以外のクラス = Cxxxx
にしてるBCB使いの漏れ
0754デフォルトの名無しさん
2005/10/25(火) 16:03:28TObjectから派生しないクラスってあるの?
0755デフォルトの名無しさん
2005/10/25(火) 16:17:26ハァ?
0756デフォルトの名無しさん
2005/10/25(火) 16:19:090757デフォルトの名無しさん
2005/10/25(火) 16:24:580758デフォルトの名無しさん
2005/10/25(火) 17:15:51それならある!
0759デフォルトの名無しさん
2005/10/25(火) 18:46:53C++Builderの話だろ。
C++にはVCLの最上位クラスを継承しない野良クラスを作れる。
0760デフォルトの名無しさん
2005/10/25(火) 19:07:360761751
2005/10/25(火) 22:01:59どこの名前空間なの?
C#にはこんなのなかったぞい。
0762デフォルトの名無しさん
2005/10/25(火) 22:19:46何で解らないものを引き受けるんだ
0763デフォルトの名無しさん
2005/10/25(火) 22:21:50Pascalには無い+=と-=の両演算子の代わりとして、元々集合を扱う手続きが流用されてる。
名前空間はBorland.Delphi.Units.Systemになるんだろうけど、実体の無いコンパイラマジック。
0764751
2005/10/25(火) 23:11:14それにしても
System.EventHandlerデリゲートがまったく出てこないのはどういうこと?
0765デフォルトの名無しさん
2005/10/26(水) 00:00:010766デフォルトの名無しさん
2005/10/26(水) 00:00:300767デフォルトの名無しさん
2005/10/26(水) 00:05:36反省正座
0768デフォルトの名無しさん
2005/10/26(水) 00:05:500769デフォルトの名無しさん
2005/10/26(水) 09:18:08ナメた口聞いてごめんなさい
ひとつ勉強になりました。
0770デフォルトの名無しさん
2005/10/26(水) 11:26:08type THoge = object
end;
0771デフォルトの名無しさん
2005/10/26(水) 11:29:52ClientDataSetに対してSQL(Select)文を発行し、
その結果をGridに表示したいのですが、可能でしょうか?
↓のコンポーネントを用意して自分でやってみたのですがどうも上手くいきません・・・
・ClientDataSet
・Query
・DBGrid
・DataSorce
Delphi始めたばかりなので、コンポーネントの使い方とかよく分かっていない状況です。
これだけのコンポーネントを用意しておけばできるものなのでしょうか?
0772デフォルトの名無しさん
2005/10/26(水) 11:46:15C/Sもしくは3層以上のシステムだったらTClientDataSetにデータプロバイダってのが必要
0773デフォルトの名無しさん
2005/10/26(水) 12:09:17それクラスじゃありませんから
0774デフォルトの名無しさん
2005/10/26(水) 14:19:46レスありがとうございます。ClientDataは使わないとダメなのです・・・(事情は省略させて下さい)
やりたいことは、、、
現状こうなっているのを↓
ClientDataSet ⇒ DataSorce ⇒ DBGrid
こうしたいんです↓
ClientDataSet ⇒ Query(ClientDataSetに対してSUM関数、GroupByを使用したい) ⇒ DataSorce ⇒ DBGrid
これのどこにデータセットプロバイダというのを挟めばよいのでしょうか?
教えて君ですみません・・・。宜しくお願いします。
0775デフォルトの名無しさん
2005/10/26(水) 15:27:53ClientDataSetは問い合わせの結果をもらうもの。自前で問い合わせを行うことはできない。
やるんだったら最低C/S形式する。C/S間の通信はTSockectConnectionでTCP/IPが楽
1台でやるならIPアドレスを127.0.0.1に指定する
図で書くとこんな感じ
クライアント部(サーバーに問い合わせ結果を貰う))
TDBGrid←TDataSorce←TClientDataSet → サーバーへ
サーバー部(クライアントからの要求に基づきSQLを発行して結果を返す)
クライアントへ←TQuery←TSession←TDatabase
0776デフォルトの名無しさん
2005/10/26(水) 16:28:21URLのページを表示させる事は出来たんですが、そのForm1から表示させたForm2がアクティブになったら
もう一つ別窓(Form3とする)に同じWebページを表示させる って動作をさせたいのですが、
Form2側の、OnActivateイベントで
Form3.WebBrowser1.Navigate(Edit1.text);
Form3.Show;
とやってもForm2にEdit1は無いのでエラーが出ます。Form3にNavigateする方法は他にあるんでしょうか?
ご教授お願いします。
0777デフォルトの名無しさん
2005/10/26(水) 16:50:10Form3.WebBrowser1.Navigate(Form1.Edit1.text);
0778デフォルトの名無しさん
2005/10/26(水) 18:08:070779デフォルトの名無しさん
2005/10/26(水) 18:09:38ちゃんと uses の意味を考えてくださいね
0780デフォルトの名無しさん
2005/10/26(水) 19:48:47書籍でステップごとに作りながら理解できる、お勧めの書籍はありますか?
amazonでの評価を信じて買ったものが、どれも内容が薄すぎて・・・(TーT
0781デフォルトの名無しさん
2005/10/26(水) 20:34:27古めだがDelphi 4あたりの方がプロっぽい感じがする。
0782デフォルトの名無しさん
2005/10/26(水) 20:36:28Delphi4とはクラス名が異なるので、新しい奴を買ったほうが良いと思う。
0783デフォルトの名無しさん
2005/10/26(水) 21:25:29Delphi 4プログラミングバイブルっていう青い表紙で分厚い本がオススメ
C/SのみならずDelphiに関する基本的な知識が網羅されてる
0784デフォルトの名無しさん
2005/10/26(水) 21:42:290785デフォルトの名無しさん
2005/10/26(水) 22:10:430786デフォルトの名無しさん
2005/10/27(木) 02:27:38子スレッドからメインスレッドのTList,TStringList等や普通の変数といった
実行時に目に見える形となって出てこないものを操作するときも、
Synchronizeを使わなければいけないのでしょうか?
0787デフォルトの名無しさん
2005/10/27(木) 02:53:13絶対に無いのであれば、Syncしなくても大丈夫です。
もしアクセスしてしまったりすると・・・
0788デフォルトの名無しさん
2005/10/27(木) 06:36:51・片方が作って片方が読むだけ(32bit変数まで)
・そうして作ったセマファーで読み書きをブロックした上で双方が読み書きする
というようなことをやらなければいけない
読み書き単位は32ビットなので、それを超える多倍長なデータ等は
同時に作成されたかどうかわからなくなるので注意。
もっともSleep命令の直後なんかは大丈夫だろうけど、どこまで大丈夫かわからんからね
0789デフォルトの名無しさん
2005/10/27(木) 06:45:27TControlに絡まないデータ周りのものはCriticalSection使った方が軽い
0790780
2005/10/27(木) 10:29:05ありがとうございます 。・゜(ノ´Д`ヽ泣)゜・。
Delphi2005を使うのですが、
古いバージョンの本でも大丈夫なんですね
探してみます
0791751
2005/10/27(木) 10:44:080792デフォルトの名無しさん
2005/10/27(木) 10:57:59デリケートってdelegateのことか?
0793デフォルトの名無しさん
2005/10/27(木) 11:25:360794デフォルトの名無しさん
2005/10/27(木) 11:50:30ありがとうございます。
CriticalSectionは少し調べた限りだと、あまり難しくなさそうなので試してみます。
あと、ここの過去ログに書いてありましたが、スレッドセーフなTStringListとして
TThreadStringListというのがあるみたいなので、それも試してみようと思います。
0795デフォルトの名無しさん
2005/10/27(木) 17:20:19シングルプロセッサと、SMPやAthlonX2のようなデュアル環境で
動作が異なる事のないように、できれば両方使える環境で
遊んでみられる事をお勧めしたい。
シングルで問題なく動いてたのに、SMPにした途端・・・・って
バグに泣かされてきましたから。
0796デフォルトの名無しさん
2005/10/27(木) 17:36:430797デフォルトの名無しさん
2005/10/27(木) 17:41:280798デフォルトの名無しさん
2005/10/27(木) 19:37:17初心者スレで無理して答えなくていいよ。
0799デフォルトの名無しさん
2005/10/27(木) 21:05:17TLabelでは枠線がなく、StaticTextでは縦方向に中央表示できませんでした
どうすればよいのでしょうか?
0800デフォルトの名無しさん
2005/10/27(木) 21:20:360801デフォルトの名無しさん
2005/10/27(木) 21:30:190802751
2005/10/28(金) 00:06:05そうです。
クラスでもなく、インターフェースでもないデリゲートです。
>>793
やっぱりそうなんですね!!
では、Includeとかいうのを使わないでC#みたくSystem.EventHandlerデリゲートを使った
イベントハンドラの登録の仕方を教えてください。m(_ _)m
0803デフォルトの名無しさん
2005/10/28(金) 00:53:50installのことをインストゥールと言うくらい恥ずかしい。
0804751
2005/10/28(金) 01:01:34Google見てものっていないんだよ。
0805デフォルトの名無しさん
2005/10/28(金) 01:01:590806デフォルトの名無しさん
2005/10/28(金) 02:27:22じゃあ何て言うの?
0807デフォルトの名無しさん
2005/10/28(金) 02:30:110808デフォルトの名無しさん
2005/10/28(金) 02:39:590809デフォルトの名無しさん
2005/10/28(金) 03:24:12gifはギフとは言いませんよ。
installのことをインストゥールと言うくらい恥かしい。
とか言ってしまう恥かしい人なんだと思うよ
0810デフォルトの名無しさん
2005/10/28(金) 09:19:01gif →じふ
0811デフォルトの名無しさん
2005/10/28(金) 15:30:12AssingFileを行いReWrite手続きを行うとエラーが発生しますが
例外をtry〜exceptで捕まえられません。どうしてでしょうか?
0812デフォルトの名無しさん
2005/10/28(金) 15:32:340813デフォルトの名無しさん
2005/10/28(金) 16:42:39ベタだけどダミーのファイルをCopyFileでコピーして
失敗したらプロテクトされてると判断するとか
0814デフォルトの名無しさん
2005/10/28(金) 17:32:4110年くらい前に、その手のエラーを出さない方法云々でごちゃごちゃやった気がする。
0815デフォルトの名無しさん
2005/10/28(金) 20:00:190816デフォルトの名無しさん
2005/10/28(金) 23:09:48BYTE*がPCharでもPByteでもUINT*がPCardinalでも
Cardinalでも動作するけど、こういうのってUnitやタイプライブラリでの
定義はどっちでも構わないもんなのん?
0817デフォルトの名無しさん
2005/10/28(金) 23:33:02http://www.google.co.jp/search?hl=ja&q=delphi+fd+%E7%A2%BA%E8%AA%8D%E3%80%80%E4%BE%8B%E5%A4%96&lr=lang_ja
もっと具体的なの昔見た覚えがあるんだが、
どこだったか忘れてもた。
0818デフォルトの名無しさん
2005/10/29(土) 03:27:46どれも8Bits順序値へのポインタに変わりは無いから互換性がある。
しかし、
>UINT*がPCardinalでもCardinalでも動作する
そんなことは無いだろう。
ポインタ型とプリミティブ型は明らかに別物だ。
0819818
2005/10/29(土) 03:29:34BYTE*に関しては、よく考えるとポインタなら何でもいいんだな。
0820デフォルトの名無しさん
2005/10/29(土) 11:19:07それが終了するまで待機させたいのですが
どのような方法があるでしょうか?
よろしくお願いします。
0821デフォルトの名無しさん
2005/10/29(土) 11:20:280822デフォルトの名無しさん
2005/10/29(土) 11:42:33今、TClientSocketを使ってプログラミングをしています。
これを使ってサーバに80ポートで接続をし、
ClientSocket1.Socket.SendText('Get /'+#13#10);
とした所、501が返ってきて、ほしいページのHTMLは返ってきませんでした。
サーバに接続をして、HTMLのソースをダウンロードするには、どのようにしたらできますか?
0823デフォルトの名無しさん
2005/10/29(土) 11:52:54用途に合わせて
URLDownloadToCacheFile
URLDownloadToFile
0824デフォルトの名無しさん
2005/10/29(土) 12:00:07Hostヘッダ抜くとバーチャルホスト使ってるサーバだと要求してるデータが取れないぞ。
0825820
2005/10/29(土) 12:11:23それで帰ってくるHINSTANCEを1秒おきにしらべて
起動しているかどうかというようなやり方がいいのですが
可能でしょうか?
0826デフォルトの名無しさん
2005/10/29(土) 12:11:500827デフォルトの名無しさん
2005/10/29(土) 12:16:31ステータス501だからリクエストが認識されていないみたいだね。
"Get" ではなくて全部大文字の "GET" にしてみたら?
0828820
2005/10/29(土) 12:16:33というのがあるようです。ちょっとやってみます。
0829デフォルトの名無しさん
2005/10/29(土) 12:26:240830822
2005/10/29(土) 12:28:44大文字にしてみたらうまくいきました。
大文字と小文字は区別されるんですね。Del使ってたからCの頃を忘れてました。
それで、データは見れたんですが、サーバがWinじゃないので日本語が文字化けをしてしまいます。
これをWinでも見れるようにするにはどのようにすればいいですか?
連続の質問で申し訳ない。
0831827
2005/10/29(土) 12:43:58>大文字と小文字は区別されるんですね。Del使ってたからCの頃を忘れてました。
HTTPのプロトコルレベルの話だから、DelphiだとかCだとかは関係ないだけどね。
日本語の件はデータ内のMETA情報から取得するなり、文字コードをスキャンして
文字コードを判定、変換する処理を自分で書く必要がある。
キツイことを言うようだけど、HTTP直叩きするのなら関連するRFCぐらいは
自分で読まないとしんどいと思うよ。
0832822
2005/10/29(土) 13:06:19ありがとうございます。とりあえず日本語なRFCをググってきます。
0833デフォルトの名無しさん
2005/10/29(土) 13:07:40<ノ_(从_)>
∩ ヽ - / ∩ <
(3 ) \/ ( E)
0834デフォルトの名無しさん
2005/10/29(土) 17:24:15コンソールアプリで
Writeln('hogehoge');
の1行だけ書いたものをバッチから
@echo off
Project1.exe
pause
というように実行すると、コンソールウインドウに
hogehoge
続行するには何かキーを押してください . . .
と表示されますが
GUIアプリでEditとButtonを配置し
バッチから実行してEditに文字を入力しButtonを押すと
Editに入れた文字をリダイレクトするものを作りたいと思っています
(バッチで直接入力を拾えとかは無しの方向で)
AllocConsoleでコンソールに書き出す方法は解ったのですが、
バッチにリダイレクトする方法がわかりません。
ググっても子アプリの標準出力を得る方法とかは見つかるんですが
出力する方はよくわからないです
具体的な方法が解る方が居ましたら、ご教示お願いします
WinXP Delphi6Personalです
0835デフォルトの名無しさん
2005/10/29(土) 17:33:16アイテムが削除される度に以降のアイテムのインデクスが1ずつ減っていくので上手くいきません・・
0836デフォルトの名無しさん
2005/10/29(土) 17:52:51そういう場合は、お尻側から削除していくのが定石
0837デフォルトの名無しさん
2005/10/29(土) 18:05:35その言葉を聞いて自分はまだまだだなぁ〜と実感してしまいましたw
ここまで瞬時に「成る程」と感じたのは久しぶりですた ありがとうございます><b
0838デフォルトの名無しさん
2005/10/29(土) 18:25:54http://leed.issp.u-tokyo.ac.jp/~takeuchi/delphi/article/031/031027.html
0839デフォルトの名無しさん
2005/10/29(土) 19:26:280840デフォルトの名無しさん
2005/10/29(土) 20:06:09http://www.tntware.com/delphicontrols/unicode/
0841デフォルトの名無しさん
2005/10/29(土) 20:52:481側のTQueryコンポーネント(TUpdateSQLあり)を更新しようとした場合、
データベースにStartTransactionを行い、Commitするとエラーになります。
多側のTQueryコンポーネントが、この1側のTQueryコンポーネントをリンク設定しているので、
多側のコンポーネントのACTIVEをFALSEに設定して、
StartTransactionすると問題なく更新できました。
リンク設定されているTQueryコンポーネントで、
StartTransactionを使って更新するには、どうすればよいのでしょうか?
0842839
2005/10/29(土) 20:56:50TntSysUtils.pas内にTnt_WideStringReplaceというのがありこれがドンピシャでした。
本当にありがとうございました。
0843816
2005/10/29(土) 21:35:44http://msdn.microsoft.com/library/default.asp?url=/workshop/misc/mlang/reference/functions/convertinetstring.asp
function ConvertINetString(lpdwMode:Cardinal;
dwSrcEncoding: Cardinal;
dwDstEncoding: Cardinal;
lpSrcStr: PChar;
var lpnSrcSize: Cardinal;
lpDstStr:PChar;
var lpnDstSize: Cardinal): HRESULT; stdcall; external 'mlang.dll' name 'ConvertINetString';
function ConvertINetString(略
var lpnSrcSize: PCardinal;
lpDstStr:PChar;
var lpnDstSize: PCardinal): 略
varならどっちでもコンパイル結果は同じ事か。。。て事で納得でけた
レスありがとう
0844デフォルトの名無しさん
2005/10/29(土) 21:54:47まあいいや
0845デフォルトの名無しさん
2005/10/30(日) 01:30:07TntSysUtils.pas内にTnt_WideStringReplaceというのがあり、どう見ても精子です。
本当にありがとうございました。
0846デフォルトの名無しさん
2005/10/30(日) 01:32:330847デフォルトの名無しさん
2005/10/30(日) 07:28:160848834
2005/10/30(日) 10:04:28>>838
レスありがとうございます。
でもダメでした。
>>834について、ちゃんと動くサンプルを知ってる方、又は書ける方
どうかよろしく御願いします。
0849デフォルトの名無しさん
2005/10/30(日) 10:32:270850834
2005/10/30(日) 10:40:03>>849
現在、リダイレクトを使わず、ファイルへの書き出しと読込で処理してますが
ファイルへの書き出しなどをしたくない為に質問に来た次第です。
よろしく御願いします。
0851デフォルトの名無しさん
2005/10/30(日) 10:41:57C/C++のコードくらいは見つかるだろ。
0852デフォルトの名無しさん
2005/10/30(日) 10:54:54知らないなら黙れ。
0853デフォルトの名無しさん
2005/10/30(日) 11:00:13ここは超初心者スレなんだから
Cのコード拾えなんてレスは検討違い
わかるなら答える、わからないなら黙ってる
たったそれだけでいい
漏れは今回の件はわからないから質問者には無駄レス付けない
0854デフォルトの名無しさん
2005/10/30(日) 11:03:42禿道! >>851 みたいのないほうがいいな
0855834
2005/10/30(日) 11:08:01>>851
C/C++のコードを見つけても、無知な私では何の用も足せません。
Delphiでの具体的な方法を知ってるなら示教して頂けませんか?
0856デフォルトの名無しさん
2005/10/30(日) 12:16:300857デフォルトの名無しさん
2005/10/30(日) 12:27:410858デフォルトの名無しさん
2005/10/30(日) 14:21:03単純にGUIアプリで作った後に
{$APPTYPE console}
を入れたのではダメなの?
0859デフォルトの名無しさん
2005/10/30(日) 14:55:29それとも Clear してから Free すべきなのでしょうか?
0860デフォルトの名無しさん
2005/10/30(日) 14:57:00たぶん
0861デフォルトの名無しさん
2005/10/30(日) 15:23:02それよりも
Freeする前にTListの場合は保持しているオブジェクトを解放
TStringListの場合はAddObjectでオブジェクトを関連付けている場合解放
これを忘れると嬉し恥ずかしメモリリークが発生します
0862デフォルトの名無しさん
2005/10/30(日) 15:28:360863デフォルトの名無しさん
2005/10/30(日) 15:48:49普通は Size を意識する必要はないです。
0864デフォルトの名無しさん
2005/10/30(日) 16:23:23わかってると思うけど、
>ClearすればFreeされる
というのは逆
0865861
2005/10/30(日) 16:55:000866834
2005/10/30(日) 16:56:06>>858
レスありがとうございます。しかし知りたいのはコンソールアプリにGUIを付ける方法
(=GUIアプリで作った後に{$APPTYPE console}) ではなく
GUIアプリでリダイレクト出力する方法です。
コンソールアプリとして出力するのではなく、コードに因って出力する方法をお願いします。
0867デフォルトの名無しさん
2005/10/30(日) 18:17:26出先からなんで検証はしていませんが、writelnは、GUIからでも標準出力に書き出せるはずだけど。
ボタンのクリックイベントにwritelnでコードを入れてはどうでしょう。
0868デフォルトの名無しさん
2005/10/30(日) 18:33:55標準出力のことじゃないんだよ。
バッチはそれ自体がプロセスじゃないから、リダイレクトとは違うんじゃないの?
ファイル経由とか・・・
0869デフォルトの名無しさん
2005/10/30(日) 18:47:59いいから試してごらんよ。
GUIとしてコンソールを持たずに起動したら、標準出力したって、誰が受け取るんだい?
リダイレクトするには、GUI付のコンソールアプリにするしかないだろ?
0870デフォルトの名無しさん
2005/10/30(日) 18:58:21当たり前なんだから。
0871869
2005/10/30(日) 19:04:45>バッチから実行してEditに文字を入力しButtonを押すと
>Editに入れた文字をリダイレクトするものを作りたいと思っています
という事をやりたいなら、
1) GUI付のコンソールアプリか、
2)コンソールアプリとGUIの2つを作って通信
させるしかない。
で2は面倒くさいだけで1と見かけは変わらない。
コンソールから起動したアプリに出力しなければリダイレクト出来ないのだから。
0872869
2005/10/30(日) 19:06:100873デフォルトの名無しさん
2005/10/30(日) 19:11:000874デフォルトの名無しさん
2005/10/30(日) 19:19:49アホやね。特に869
0875デフォルトの名無しさん
2005/10/30(日) 19:40:040877デフォルトの名無しさん
2005/10/30(日) 23:52:340878デフォルトの名無しさん
2005/10/30(日) 23:59:060879デフォルトの名無しさん
2005/10/31(月) 00:39:51RichEditで文字列を入力するようにしているのですが、64k(65,546バイト)以上は
入力することが出来ません。コードでTextプロパティに直接入れると64k以上でも
入るのですが・・・
この制限を回避する方法はないでしょうか?
0880デフォルトの名無しさん
2005/10/31(月) 00:43:33RichEdit.MaxLength := $7FFFFFF0;
とか
SendMessage(RichEdit.Handle, EM_EXLIMITTEXT, 0, $7FFFFFF0);
とか。
0881デフォルトの名無しさん
2005/10/31(月) 00:44:58MaxLengthの値を増やすんだ。0だと64Kに制限される。
ただしあまり大きな数指定するとやたら時間かかることがある
0883デフォルトの名無しさん
2005/10/31(月) 01:33:45TCustomRichEditを継承して作ってみるといいよ
自分でコンポーネント(クラス)を作れるともっとDelphiが楽しくなる
0884デフォルトの名無しさん
2005/10/31(月) 04:16:36ttp://ccfa.info/cgi-bin/up/src/up19081.txt
にコードをアップしたのでどなたか教えてください。
0885デフォルトの名無しさん
2005/10/31(月) 04:23:16ttp://junki.main.jp/delphigr/001PixelsScanLine.htm
ttp://junki.main.jp/delphigr/004BmpData24.htm
0886デフォルトの名無しさん
2005/10/31(月) 04:28:10じゃなくて Image1.Refresh;
0887デフォルトの名無しさん
2005/10/31(月) 04:29:14captionの内容を取得するにはどうすればいいのでしょうか?
0888デフォルトの名無しさん
2005/10/31(月) 04:51:140889デフォルトの名無しさん
2005/10/31(月) 06:31:41システムパレットのエントリを使ってるのが間違い。RGB の換算できない。
Pixels[] だと TColor の定義上うまくいくが。
あと、ScanLine をつかってもあまり速くならない。for ix ループで再描画してる
のが遅い原因。再描画を最後の1回だけにすると劇的に速くなる。
0890887
2005/10/31(月) 06:55:10遅くなって申し訳ないです。
RowSelectをFalseにしたままだと取れないんですね。Trueにしたら問題なくできました。
有難う御座いました。
0891デフォルトの名無しさん
2005/10/31(月) 07:27:04> システムパレットのエントリを使ってるのが間違い。RGB の換算できない。
> Pixels[] だと TColor の定義上うまくいくが。
DotColor := PaletteIndex(i mod 20) + 1;
のところだと思うのですがこれ以前ぐぐって見つけたものをそのまま使っただけです。
RGB の換算は具体的にはどうすればいいのでしょう?
0892デフォルトの名無しさん
2005/10/31(月) 07:59:570893デフォルトの名無しさん
2005/10/31(月) 08:10:37インクリメント
0894デフォルトの名無しさん
2005/10/31(月) 10:50:473.その写真をラベリング 4、ラベリングしたグループの中心の座標を計算して出力
というような手順でやろうとおもってます。
今のところ、テキストイメージから2番をすることしかできてないのですが、3のラベリングとはどのようにすればいいのでしょうか?今は写真の数値をstringgridにひとつずつ入れてやってます。。。 空気読んでなくショボイ質問ですがよろしくおねがいします
あと画像の処理においてどこか参考になるサイトとかありましたら教えてください。おねがいします!
0895デフォルトの名無しさん
2005/10/31(月) 12:29:05別の古いパソコンwindows2000で.exeを起動したのですが、エラーがでます。
xpで作ったものは2000で動かなかったりするものなのでしょうか?
それとも何か設定をしないといけないのでしょうか? 宜しくお願いします。
0896デフォルトの名無しさん
2005/10/31(月) 12:34:592kに追加でインストールできる事もあるし
両方の環境で動くようにデバッグしないといけない事もある。
0897デフォルトの名無しさん
2005/10/31(月) 12:40:21どんなエラーが発生するのか書かないとフォローのしようがない。
今のままだと、場合によっては動かないこともあるよ、としか答えられない。
0898デフォルトの名無しさん
2005/10/31(月) 13:02:16>>896 >>897
ありがとうございます。
エラーは アプリケーションエラー
えらーが発生したため、Project1.exe を終了します。 プログラムを一度閉じる必要があります。
エラーログを作成しています。
と、言うメッセージでエラーログが何処なのかが分かりませんでした。
以前試した時は動いたので、変更した点と言えば、bmpをbmpにコピして貼り付けたことくらいで、これが原因かな?
そのbmpがexeの中ではなくimageフォルダの中にそれを拾いきれてないのか?
exeの中にこのようなbmpを同封することはできるのでしょうか?
0899デフォルトの名無しさん
2005/10/31(月) 13:08:57後はBMPの処理を行ってる部分で発生する例外を補足すれ
そんな当たり前のメッセージじゃニュータイプでもない限り理解不能
0900デフォルトの名無しさん
2005/10/31(月) 13:09:07ソース2kもってってデバッグしろ。
OSの差より環境の差によるバグって気がする。
c:\delphi\proj1\ってディレクトリがないとエラーが出るとか。
0901デフォルトの名無しさん
2005/10/31(月) 13:12:38ありがとうございます。 環境から調べてみます。
0902デフォルトの名無しさん
2005/10/31(月) 14:10:40どうもGetCurrentDirを使ってるので思ってるディレクトリより一つ上で保存されたりしていました。
.exeがある現在のディレクトリを指定するにはどのようにすればいいのでしょうか?
0903デフォルトの名無しさん
2005/10/31(月) 14:11:170904デフォルトの名無しさん
2005/10/31(月) 14:15:21すみませんが、「写真をラベリング」とは、具体的にどのような処理なのか
教えてくれませんか?
0905デフォルトの名無しさん
2005/10/31(月) 16:23:17ありがとうございます。
やっぱりimageディレクトリのようです。
一つ上のimageディレクトリの名前を変えたところ、xpでも動かなくなりました。
ExtractFilePath(Application.ExeName); で全部修正をこころみたのですが、
やはり一つ上のimageディレクトリを探しるようです。
何故かファイルを開いた時はやはり一つ上のimageディレクトリを開くのです。
何か対処方法ありましたら教えてください。
0906デフォルトの名無しさん
2005/10/31(月) 16:29:34try exceptで思ってるところでLOG出してみたら?
ひとつ上のディレクトリを指定しているのは、お前が指示しているはず。
コンピュータは支持通り動く
0907デフォルトの名無しさん
2005/10/31(月) 16:30:15支持 ×
指示 ○
0908デフォルトの名無しさん
2005/10/31(月) 16:35:06自分のコードに責任を持ちなよ。なぜか、なんていってるうちは解決できない。
0909デフォルトの名無しさん
2005/10/31(月) 16:39:36ありがとうございます。
アイコン臭いきがしてきました。
0910デフォルトの名無しさん
2005/10/31(月) 17:01:18ListView1.Items.Delete(ListView1.Selected.Index);
としてボタンを押したときに項目を消したいんだけど、
何も選ばれて無いとエラーになる。
どうしたらいいの?
0911デフォルトの名無しさん
2005/10/31(月) 17:05:14どうせソースに'Image'なんてベタな指定してるんだろ
>>910
リストで行を選択してないだけ
0912デフォルトの名無しさん
2005/10/31(月) 17:07:24TListView.SelCount見て0ならなにもしない
0913デフォルトの名無しさん
2005/10/31(月) 17:10:330914デフォルトの名無しさん
2005/10/31(月) 17:15:110915894
2005/10/31(月) 20:48:260916894
2005/10/31(月) 20:51:112値化したの黒の部分のピクセルの座標からその隣がもし黒であったならそれを一つのグループにするみたいな作業です
これをすることによって写真の物体の輪郭がわかったり重心の座標が求めたりしたいのです
ええっとこのような説明でわかりましたでしょうか? 汗
0917デフォルトの名無しさん
2005/10/31(月) 20:54:30よろしくお願いします。
0918デフォルトの名無しさん
2005/10/31(月) 21:29:14アイコンでもなく、xpのエラーは
デバッガ例外発生
プロジェクト Prodect1.exがExceptionクラスの例外を発生しました。
'Error setting path:"C\Program File\Borland\Delphi6\Projects\gazo\image"'
プロセスは停止しています。再開するにはステップ実行または実行を選択してください。
というもで、単にsetting path 変更すればいいのかな?と、
そのsetting path を探せど見つからずで、どこで変更できますでしょうか?
宜しくお願いします。
0919デフォルトの名無しさん
2005/10/31(月) 22:18:07> 2値化したの黒の部分のピクセルの座標からその隣がもし黒であったならそれを一つのグループにするみたいな作業です
ありがとう。
で、具体的には、2値化(って白と黒の2色だよね)した画像の内部データにアクセス
できると問題が解決しますか?
速度を重視しなければ、TBitmap.Canvas.Pixels[] でアクセスできますし、
pf1bit の PixelFirmat でも、ちょっと工夫すると ScanLine で高速に
アクセスすることもできます。
0920デフォルトの名無しさん
2005/10/31(月) 22:20:50輪郭を求めるには、いちいち各ピクセルを順番になめていくだけです。
白から黒へ変化するときと黒から白に変化するときを記録していきます。
あと、リージョンをつかう方法もあります。
0921デフォルトの名無しさん
2005/11/01(火) 06:45:52^^;
0922894
2005/11/01(火) 08:50:57ありがとうございます。画像がJpegなんですけどその場合はあらかじめBMP
に変えておいたほうがいいでしょうか?とりあえず今ラベリングの処理をしてみたところ思いっきり無限ループにはまっちゃいまいした
グループ化する時にきっと再帰関数を使うのでしょうがその使い方がわからずとりあえずifとforで作ったのが原因だと思います
再帰関数使って作ってみますね!
0923デフォルトの名無しさん
2005/11/01(火) 14:05:490924デフォルトの名無しさん
2005/11/01(火) 14:14:14できるよ。
WindowsNTをサポートしなくても良いのならProcess32First,Process32Next,OpenProcess辺りの
APIを使えばオケ。
0925デフォルトの名無しさん
2005/11/01(火) 15:58:380926デフォルトの名無しさん
2005/11/01(火) 17:28:44ありがとうございました。
0927デフォルトの名無しさん
2005/11/02(水) 02:17:270928デフォルトの名無しさん
2005/11/02(水) 07:39:44安いので買いたいのですが、
Indyコンポーネントとかふつうに使えますか?
その他になにか不便なこととか
ありますでしょうか?
よろしくおねがいします!
30000くらいまで出せますので
これを買ったほうがいいっていうのが
あったらそちらも教えてください。
ちなみに学生です。
0929デフォルトの名無しさん
2005/11/02(水) 07:46:25> 30000くらいまで出せますので
Delphi7 Professionalを買った方が良いです。
> Indyコンポーネントとかふつうに使えますか?
使えます。
> その他になにか不便なこととか
Delphi7 Personalにはソースが付いてません。
無料のD6 Personalと大して違わないと思います。
新しい物が好きなら年末まで待って、Delphi2006を購入するという手もあります。
Delphi2005はあと1ヶ月少々で終了なのでお勧めしません。
0930デフォルトの名無しさん
2005/11/02(水) 08:11:58ありがとうございます!
ソースって大事ですか?
Delphi2006は30000以内で買えますか?
0931デフォルトの名無しさん
2005/11/02(水) 08:24:38ソースを読めば、コンポーネントがどんな仕組みで動いているのか分かりますので
勉強になります。またちょっとだけ動作を変えたり、バグを発見したり、
いろいろ役立ちます。
> Delphi2006は30000以内で買えますか?
価格は未発表ですけど、アカデミック版なら買えると思いますよ。
ただしDelphi2006はDelphi6/7と違って、いろいろな機能がついているのでIDEの動作は
重たいです。また発展途上なのでバグも残っています。
チャレンジする余裕があるなら、Delphi2006は楽しみな製品ですけど
.NETやリファクタリング、モデリングに興味がなければ、Delphi7でも良いと思います。
0932デフォルトの名無しさん
2005/11/02(水) 09:06:21おれは学生の時にDelphi1を買った。
プログラミング初めてだったしチンプンカンプンなままほとんど使いこなせずに
Delphi2Pro版を買った。その頃コンポーネントを作ろうと思い立ち、初めて
VCLソースをまじめに追うようになって急激に理解度が増した。目から鱗が
落ちる気分だったよ。
0933デフォルトの名無しさん
2005/11/02(水) 09:17:15作ってるんですが、
Delphiでしかやれないことが
いろいろあるんですよね〜。
だからDelphiにはあこがれています。
年末まで待ってDelphi2006買うことに決めました。
アドバイスありがとうございました。
0934デフォルトの名無しさん
2005/11/02(水) 09:27:18最初はソースはなくてよい。軽いし、バグに悩まされることも少ない。
Indy も使える。
0935デフォルトの名無しさん
2005/11/02(水) 09:37:120936デフォルトの名無しさん
2005/11/02(水) 09:53:040937デフォルトの名無しさん
2005/11/02(水) 09:57:40学生用。なんか揉めてたような。
0938デフォルトの名無しさん
2005/11/02(水) 12:46:38interface部の
uses
と
implementation部の
uses
の違いをご教示ください。
ヘルプを参照しても、usesは
「実現部が独自のuses 節を含む場合もあります。」
とまでしか書いてありません。
今は、コンポーネント貼り付け等による
デフォルトでセットされるユニットではなく、
独自で作成したユニットを、明示的に
参照させる場合に
implementationの
uses節にユニットを追加するようにしています。
0939デフォルトの名無しさん
2005/11/02(水) 12:58:37interface部でそのユニットが必要なら、interface部のusesに書く。
interface部でそのユニットが不要なら、implementation部のusesに書く。
interface部のusesに書くと循環参照(ユニットが相互に参照し合う)が発生したりして面倒なので
implementation部のusesに書けるものはそちらに書いた方がいい。
0940デフォルトの名無しさん
2005/11/02(水) 12:59:08C++の.hに書く#includeと.cppに書く#includeの違いみたいな物だと思ってる
0941デフォルトの名無しさん
2005/11/02(水) 13:13:56どうもありがとうございます。
なるほど、外部参照、内部参照定義
みたいなものですね。
0942デフォルトの名無しさん
2005/11/02(水) 15:42:26procedure TForm1.ShellTreeView1Change(Sender: TObject; Node: TTreeNode);
begin
FileListBox1.Directory := ShellTreeView1.Path;
end;
としているのですが、ShellTreeView を何回かクリックして終了するとメモリーリークが
発生します(起動して終了するだけでも発生することがある)。
この2つのコンポ相性が悪いのでしょうか?
ちなみに
ttp://www.bekkoame.ne.jp/~itotaka
で公開されている伊藤隆志氏の ShellTreeView(使用しているのは D5 用)でも同じ症状が発生します。
リークのチェックは
ttp://hp.vector.co.jp/authors/VA015850/delphi/fragments/LeakChecker.html
を利用しています。
0943デフォルトの名無しさん
2005/11/02(水) 17:29:47procedure TForm1.Button1Click(Sender: TObject);
begin
repeat
・・・
Application.ProcessMessages;
until hogehoge;
end;
という感じで、ボタンクリック時にかなり長めの処理をしてます。
で、ProcessMessagesを呼んでるのでフォームが固まったりとかはないんですが、
例えばMemo上で右クリックをしてポップアップを出したり、フォームを移動させたりすると、
その間ループ処理が止まってしまいます。
これをスレッドを用いる以外で止まらせずに処理を継続する方法ってあるんでしょうか?
0944デフォルトの名無しさん
2005/11/02(水) 17:33:560945デフォルトの名無しさん
2005/11/02(水) 17:46:350946デフォルトの名無しさん
2005/11/02(水) 17:58:000947デフォルトの名無しさん
2005/11/02(水) 19:24:100948デフォルトの名無しさん
2005/11/03(木) 23:06:11プログラマが必ずしも立ち入れるものではないので、回避策はありません。
0949デフォルトの名無しさん
2005/11/04(金) 00:32:390950デフォルトの名無しさん
2005/11/04(金) 01:10:590951デフォルトの名無しさん
2005/11/04(金) 01:14:390952デフォルトの名無しさん
2005/11/04(金) 07:43:15スレッド使えばいいじゃん。あほか。
0953デフォルトの名無しさん
2005/11/04(金) 09:15:030954デフォルトの名無しさん
2005/11/04(金) 10:39:000955デフォルトの名無しさん
2005/11/04(金) 11:56:390956デフォルトの名無しさん
2005/11/04(金) 12:05:43でも、そっから先がめんどくさい。素直にスレッド使ったほうが楽。
0957デフォルトの名無しさん
2005/11/04(金) 12:27:43タイマーコンポと同じ感じで遥かにレスポンスよく作れるようになるのに。
0958デフォルトの名無しさん
2005/11/04(金) 12:30:32やっぱある程度理解を深めてから使うのが無難だからじゃ?よく分からんけど。
0959デフォルトの名無しさん
2005/11/04(金) 12:55:25パレットにないとつかえないとか思ってる?
0960デフォルトの名無しさん
2005/11/04(金) 13:01:01お前ここは初めてか。力抜けよ
0961デフォルトの名無しさん
2005/11/04(金) 13:06:20はい、クラス名とnewとアスタリスク書くのがめどいです。
静的生成させてくだしあ
byBCB使い
0962デフォルトの名無しさん
2005/11/04(金) 13:11:28コンポにして隠蔽してしまうとかえって使いづらいと思うんだが。
0963デフォルトの名無しさん
2005/11/04(金) 13:19:200964デフォルトの名無しさん
2005/11/04(金) 13:37:43つまりDelphi6はゲーム製作やマルチメディアには向かないということですね?
0965デフォルトの名無しさん
2005/11/04(金) 13:47:13asm
ま、その調子だとお前さんには無理そうだし、
ないと思っておいていいんじゃない?
0966デフォルトの名無しさん
2005/11/04(金) 14:54:20そんなことはわかってますよ!
あなたasmばかり繰り返して問題の本質をわかってない
わたしはどうやってそれを実現するんですかと聞いてるんです
誤魔化さないで具体的に答えてください
0967デフォルトの名無しさん
2005/11/04(金) 14:55:16そうだね。「ダブルクリックして」してどのイベントにコードを書くのか不明だが。
0968デフォルトの名無しさん
2005/11/04(金) 14:56:58ひとにものを尋ねる態度としては最低だね。あるかないかの質問だったはず。
0969デフォルトの名無しさん
2005/11/04(金) 15:09:30自作のものだと
OnExecuteでサブスレッドのメイン
OnSynchronizeでVCLとの同期部分
後はおまけでOnInitialize, OnFinalize。
0970デフォルトの名無しさん
2005/11/04(金) 15:34:41で、そのイベント、誰が呼び出すの?
0971デフォルトの名無しさん
2005/11/04(金) 15:50:570972デフォルトの名無しさん
2005/11/04(金) 17:34:51必死ですね^^;
0973デフォルトの名無しさん
2005/11/04(金) 17:49:20SSEで複数の浮動小数点数演算を同時に実行したいのだとすると
DelphiだとSSEコードをインラインアセンブラで書く事になります。
ttp://buin2gou.nyaa.co.uk/delphi/mmxasm.htm
めんどくさいなら、IntelC++とかで、SSE用にコンパイルしたアセンブラ出力を持ってくるとか
0974デフォルトの名無しさん
2005/11/04(金) 18:08:15そのドキュメントってどうしたら見る事ができますか?
ググっても、それを参照するドキュメントしか出てこないようです。
0975デフォルトの名無しさん
2005/11/04(金) 18:14:320976デフォルトの名無しさん
2005/11/04(金) 18:16:420977デフォルトの名無しさん
2005/11/04(金) 18:24:54スレ違いなのは判っているのですが、もし判る方がいらっしゃったら教えていただきたいです。
0978デフォルトの名無しさん
2005/11/04(金) 18:27:300979デフォルトの名無しさん
2005/11/04(金) 18:28:230980デフォルトの名無しさん
2005/11/04(金) 18:28:59新規に建てたいな
0981デフォルトの名無しさん
2005/11/04(金) 18:31:440982デフォルトの名無しさん
2005/11/04(金) 18:42:180983デフォルトの名無しさん
2005/11/04(金) 20:32:180984デフォルトの名無しさん
2005/11/04(金) 20:38:420985デフォルトの名無しさん
2005/11/04(金) 20:58:00上司にいびられることもなく、こんな所で煽ってらなくても生きていけるのに。
0986デフォルトの名無しさん
2005/11/04(金) 23:32:44考えてるだけでも勃ってきた
0987デフォルトの名無しさん
2005/11/05(土) 02:11:130988デフォルトの名無しさん
2005/11/05(土) 08:13:420989デフォルトの名無しさん
2005/11/05(土) 08:28:460990デフォルトの名無しさん
2005/11/05(土) 08:59:120991デフォルトの名無しさん
2005/11/05(土) 10:13:310992デフォルトの名無しさん
2005/11/05(土) 12:21:360993デフォルトの名無しさん
2005/11/05(土) 12:22:430994デフォルトの名無しさん
2005/11/05(土) 12:36:430995デフォルトの名無しさん
2005/11/05(土) 12:40:280996デフォルトの名無しさん
2005/11/05(土) 12:59:280997デフォルトの名無しさん
2005/11/05(土) 13:13:17俺いましらべたら3つあるみたいなんだが・・・。
0998デフォルトの名無しさん
2005/11/05(土) 13:23:090999デフォルトの名無しさん
2005/11/05(土) 14:17:131000デフォルトの名無しさん
2005/11/05(土) 14:18:2710011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。