MATLAB Release Notes    

外部インタフェース/APIの機能

MATLAB 6.5は、以下の外部インタフェースとAPIの機能を追加しています。

新規 MEX 関数

エラーやワーニングを報告する際に、メッセージ識別子やメッセージ文字列の指定が可能な2つの新規CおよびFortran MEX関数が提供されています。これらの関数は、エラーやワーニングメッセージ文字列内で、MATLABの関数sprintfで用いたような書式付きの変換キャラクタを受け取ることができます。

関数
詳細
mexErrMsgIdAndTxt
識別子をもつエラーメッセージを出力し、MATLABプロンプトに戻る
mexWarnMsgIdAndTxt
識別子をもつワーニングメッセージを出力

新規COMクライアントサポート機能

オブジェクト指向テクノロジへの一貫したインタフェースを提供するため、MATLAB 6.5は、MATLABとのComponent Object Model (COM)コントロールとサーバの相互作用の方法に影響を与える変更が行われています。

この変更での主な利点は、以下の通りです。

これらの機能に関する詳細は、MATLABドキュメントのClient Support for COMを参照してください。これらの変更が既存プログラムにどのように影響するかを知るためには、External Interfaces/API Upgrade Issuesを参照してください。

COMに対する新規MATLAB関数.   COMインタフェースで利用可能な新規関数は以下の通りです。

関数
詳細
addproperty
COMオブジェクトにカスタムプロパティを追加
deleteproperty
COMオブジェクトからカスタムプロパティを削除
eventlisteners
listenerに設定されるイベントのリストを出力
events
コントロールがトリガするイベントのリストを出力
isevent
アイテムがCOMコントロールのイベントであるかどうかを決定
ismethod
アイテムがCOMオブジェクトのメソッドであるかどうかを決定
isprop
アイテムがCOMオブジェクトのプロパティであるかどうかを決定
registerevent
コントロールのイベントを使ってイベントハンドラを登録
unregisterallevents
コントロールに対するすべてのイベントを未登録にする
unregisterevent
コントロールのイベントを使ってイベントハンドラを未登録にする

COMのMATLAB新規関数.   COM環境において以下のMATLAB関数を使うことができます。

関数
詳細
fieldnames
COMオブジェクトのプロパティ名を出力
inspect
プロパティ値を表示し修正するためのグラフィカルインタフェースを表示
methods
コントロールまたはサーバに対するすべてのメソッドをリスト表示
methodsview
メソッドの情報をリストするためのグラフィカルインタフェースを表示

プロパティ名の指定.   プロパティ名は、省略して、明確に識別可能できる文字を入力するだけでかまいません。また、プロパティ名は大文字と小文字の区別を行います。たとえば、Excelアプリケーションを実行中のCOMサーバからOrganizationNameプロパティの値を取得するには、以下を使います。

COMプロパティに対する列挙された型の値.   MATLABでCOMプロパティの値を設定する際、数値の代わりに列挙された方の文字列を使うことができます。xlUnicodeTextのような列挙された文字列は、等価な数値よりも覚えやすいので、プロパティに対して有効な設定を探す時間が不要になります。

オブジェクト h のプロパティに対して有効なすべての列挙型の値をリストするには、以下を使います。

列挙型の文字列で表わされる値にプロパティを設定するには、以下のシンタックスを使います。enumstring引数は、省略可能で、明確に識別可能となる文字を入力するだけでかまいません。

プロパティのカレントの列挙型の値を取得するには、以下のようにします。

詳細は、MATLABドキュメントのUsing Enumerated Values for Propertiesを参照してください。

カスタムプロパティ.   関数addpropertyを使って、ユーザ独自のプロパティをコントロールに加えることができます。下記のシンタックスは、コントロールhに対するカスタムプロパティを作成します。

つぎの例題は、mwsampコントロールを作成し、Positionという新規プロパティを追加し、そのプロパティに値 [200 120] を割り当てます。

コントロールからカスタムプロパティを削除するには、以下のシンタックスでdeletepropertyを使います。

詳細は、MATLABドキュメントのCustom Propertiesを参照してください。

新規のイベントハンドリング関数.   MATLABの旧バージョンでは、コントロールの作成時にのみコントロールに対するイベントを登録できました。MATLAB 6.5では、関数registerevent, unregistereventunregisteralleventsを利用するときはいつでも、イベントを登録あるいは未登録にすることができます。

関数eventseventlistenersをそれぞれ使って、コントロールが応答可能なすべてのイベントや、現在登録されているイベントのみをリスト表示することができます。関数eventsは、COM関数sendを置き換えたものです。

イベントハンドリングに関する情報は、COM Control Events" in the MATLAB documentation を参照してください。

プロパティの取得と設定のためのGUIインタフェース.   新規関数inspectを使って、COMオブジェクトまたはインタフェースに属するすべてのプロパティの一覧を見ることができます。Excel serverオブジェクトを作成し、inspectを実行することにより、下記のProperty Inspectorウィンドウが起動されます。

あるプロパティの値を変更するには、左側のプロパティ名をクリックしてから、右側のフィールドに新規の値をタイプしてください。

MATLABドキュメントのUsing the Property Inspectorを参照してください。

set Accepts Multiple Arguments.   1回のsetコマンドにより、複数のプロパティ値を設定することが可能です。シンタックスは以下の通りです。

property引数のつぎには、newvalue引数が続きます。下記の例題は、mwsampコントロールに対するLabelRadiusを変更します。

より詳しいエラーメッセージ.   MATLABは、COMエラーが発生した際に、より詳しい情報を出力します。これには、エラーのソースと目的地、エラーを解決するための手助けとなるヘルプリソースの位置が含まれます。


  グラフィックス機能 グラフィカルユーザインタフェース(GUIDE)の作成機能