TExStringList;はどうやって使うのでしょう?

解決


komin  2008-09-27 09:09:54  No: 32055

現在、メール関係のアプリケーションを作っています。その中で、MailmessageのHeadのプロパティはTExStringListとなっています。ヘルプを引いてもTExStringListは見つからないのですが、その内容を知りたいのとどうやって使うのか知りたいのですが…  どのユニットで宣言されているのでしょうか?


igy  2008-09-27 17:58:37  No: 32056

TMailMessage は使ったことがないのですが、・・

>TExStringListは見つからないのですが、その内容を知りたい

TStringListを継承したクラスだと思いますので、
TStringListと同じような使い方でよいのは?

取得された電子メールメッセージのヘッダーを取得する場合、

  Memo1.Text := NMPOP31.MailMessage.Head.Text;

のような感じで、どうですか?


komin  2008-09-29 07:46:06  No: 32057

ありがとうございます。特に何もせず、Tstringlistにキャストできました。


モッタイナイ  2008-09-29 17:58:17  No: 32058

>特に何もせず、Tstringlistにキャストできました。

春子:「あれ? TStringListにキャストしちゃった? それはモッタイナイね」
真琴:「でも、宣言されてるユニットが分からないとTExStringListは使えないし…」
春子:「TExStringListは NMExtStrユニットで宣言されてるよ」
真琴:「あっ、そうなの? それで TExStringListは TStringListから派生したもの?」
春子:「そうみたいだね、だから使い方も元のTStringListと同じ」
真琴:「同じならナンでそんなクラス作ったのかなぁ…、TStringListでもイイじゃん」
春子:「ん? マコトだってメールのヘッダを見たコトあるよね?」
真琴:「あるよ、"From: *****"とか、"Subject: *****"とかの文字列が並んで…」
春子:「その通り、だから、TStringListのValuesなどの便利なプロパティが使えないの」
真琴:「あっ、そっか、そのValuesプロパティは"名前=値"じゃないとダメだよね」
春子:「もし MailMessageのHeadプロパティがTStringListだったら、↓こんなコト出来ないでしょ?」

  Edit1.Text := NMPOP31.MailMessage.Head.Values['Subject'];

真琴:「だけど、件名は NMPOP31.MailMessage.Subject でも取得できるよ」
春子:「もっと詳しいヘッダ情報が欲しい場合だってあるの」

  Edit2.Text := NMPOP31.MailMessage.Head.Values['Content-Type'];
  Edit3.Text := NMPOP31.MailMessage.Head.Values['Received-SPF'];

真琴:「ナルホド…、形式が"名前: 値"という文字列のためのクラスなのね、TExStringListは」
春子:「そういうワケ、…マコト、残暑が続いてたけど、急に涼しくなったね」
真琴:「うん、夏は終わったよね、ハルコさん」
春子:「え? アタシが学生の頃は夏休みが終われば夏も終わったって思ったよ」
真琴:「そんな早く終わらせちゃモッタイナイじゃない、アタシの夏は今日終わったの」


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加