イッツキャドコミュニティ

« 戻る


Re: カスタマイズできないの? 2005/09/21 09:59
お名前 : Dim カテゴリー : 【未分類】

中村さん、ご苦労様です。m(__)m

たしかにご提示いただいたコードにて実行することが出来ました。
が、、、ちょっと気になるところがあるので確認させてください。

まずデリート系ですが、VBEの入力支援機能をたよりにすると
座標系とレイヤの削除は戻り値の型が表示されず、線の削除は
戻り値に型があるみたいですね。

  DeleteCoordinate(Coordinate As Coordinate)
DeleteLayer(Layer As Layer)

DBDeleteEntity(Entity As Entity) As Boolean

同じく、線や円などの作図系も

  DBAddCircle(x As Double, y As Double, r As Double, [Layer], [Coordinate]) As Entity

なので、戻り値の型が指定されているDBDeleteEntityやDBAddCircleの記述は

戻り値を受け取るなら、
  Set myEntity = DBAddCircle(x, y, r, myLayer, myCoor)
Let blnTemp = DBDeleteEntity(myEntity)

戻り値を受け取らないなら
  DBAddCircle x, y, r, myLayer, myCoor
DBDeleteEntity myEntity

で、戻り値の型が指定されていない(もしくは戻り値がない)メソッドは
DeleteCoordinate myCoor
DeleteLayer myLayer

という記述スタイルになるみたいですね。

う〜ん、戻り値を受け取るか受け取らないかは個人のスタイルで分かれますが
同じデリート系で戻り値が有るメソッドと無いメソッドがあるのは
個人的にはどうかと感じます。

オブジェクトブラウザで確認するとDeleteCoordinate,DeleteLayerはSub、
DBDeleteEntityはFunctionなので前者には戻り値がなく、後者に戻り値があるのは
あたりまえですが、両者をわけている理由があるのですか?

Entityの削除は成否を判定できるけど、レイヤや座標系は削除の成否を
判定できないことになりますよね。

失敗は例外でキャッチという事でしょうか?

////////////////////////////////////////////////////////////////////////////////

あと、贅沢をいえば文字と寸法線にかんするメソッドやプロパティが欲しいです。
中村さん、よろしくお願いします。


返信フォーム
お名前
メールアドレス (表示はされません。)
題名
メッセージ
パスワード
解決!! 解決した場合はチェックを入れてください。