くだすれDelphi(超初心者)その27
■ このスレッドは過去ログ倉庫に格納されています
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/
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:49■ このスレッドは過去ログ倉庫に格納されています