2023/05/07

リッチテキスト:#3)添付ファイルの作成

今回は、リッチテキストフィールドにファイルを添付する方法を確認しましょう。

ファイルを添付するには、NotesRichTextItem クラスの AppendDocLink メソッドを使用します。このメソッドは、添付ファイルのほかに、オブジェクトを埋め込んだり、オブジェクトリンクを貼り付けたりできます。今回は、一般に利用する既存ファイルを添付する方法についてのみ記載します。

このメソッドの構文と引数は、以下の通りとなります。

Call notesRichTextItem.EmbedObject( type%, class$, source$ )

  • Type%

数値型。以下の中から指定します。今回は添付ですので、別途定義された定数の EMBED_ATTACHMENT もしくは 1454 をしています。 

定数
1454 EMBED_ATTACHMENT
1453 EMBED_OBJECT
1452 EMBED_OBJECTLINK

  • class$

String 型。空のオブジェクトを埋め込む場合に使用する引数。既存ファイルを添付するの場合、null (空の文字列)を指定します。

  • source$

String 型。添付するファイルを指定します。  


例えば、以下のサンプルは、Dドライブ直下にあるテキストファイルを添付します。

Sub Initialize
   Dim ns As New NotesSession
   Dim ndb As NotesDatabase
   Dim nd As NotesDocument
   Dim nrti As NotesRichTextItem

   Set ndb = ns.CurrentDatabase
   Set nd = ndb.CreateDocument()

   nd.Form = "RichText"
   nd.Title = "リッチテキスト:#3)添付ファイルの作成"

   Set nrti = nd.CreateRichTextItem("Body")
   Call nrti.AppendText("以下にファイルを添付します。")
   Call nrti.AddNewLine(1)
   Call nrti.EmbedObject(EMBED_ATTACHMENT, "", "D:\RichTest#3.txt")

   Call nd.Save(True, False)
End Sub


実行すると、以下のようなります。


ノーツクライアントから添付したときのように、ファイルに関連付けされたアイコンはセットされず、グレーの紙(?)の無機質なアイコンとなります。

また、ファイル名はアイコンの下ではなく、右横となります。また、画像ファイルのサムネイル表示もされません。ご注意ください。

どういった理由でこのような仕様となっているのかは知りませんが、ちょっと残念です...

 

前回 リッチテキストの基本操作 次回

0 件のコメント:

コメントを投稿