イージスの華麗に加齢な生活 -3ページ目

イージスの華麗に加齢な生活

iPhoneとメタボリックな親父の生活

これもVBAから比べると


非常に使いやすくなってる。


ただ、まったくの別物なので、


理解するのに少し苦労した。


一番よく使う、GetPointの例


まずは宣言

'GetPointを使うための準備用のオブジェクト

Dim pptPtOpts As PromptPointOptions = New PromptPointOptions()

'GetPointから返ってくる値を格納する構造体
Dim pptPtRes As PromptPointResult

'取得した点を格納するオブジェクト
Dim pt1stPos As Point3d,pt2ndPos As Point3d


'----- 第1点目の取得 -----

'準備オブジェクトの設定。ユーザーへのメッセージ

pptPtOpts.Message = '第1点目を指示してください。"

'その他準備があれば追加していく


'点を取得する(acDocのDocumentオブジェクトは取得済みとする)

pptPtRes = acDoc.Editor.GetPoint(pptPtOpts)
'ここでユーザーが点を入力するまでプログラムは止まる


'GetPointがどう処理されたか、pptPtRes.Statusに格納されている

Select Case pptPtRes.Sutatus

  Case PromptStatus.Cancel

    'キャンセルされたら"Cancelが格納されている

    Exit Sub

  Case PromptStatus.OK

    '普通に点を指定されたらOKが格納される

    '.Valueに指示されたPoint3Dオブジェクトが格納されている

    pt1stPos = pptPtRes.Value

End Select


'----- 第2点目の取得 -----

'準備オブジェクトの設定。ユーザーへのメッセージ

pptPtOpts.Message = '第2点目を指示してください。"

'1点目からの基準線を表示させる

pptPtOpts.UseBasePoint = True

pptPtOpts.BasePoint = pt1stPos


'点を取得する

pptPtRes = acDoc.Editor.GetPoint(pptPtOpts)
'ここでユーザーが点を入力するまでプログラムは止まる


'GetPointがどう処理されたか、pptPtRes.Statusに格納されている

Select Case pptPtRes.Sutatus

  Case PromptStatus.Cancel

    'キャンセルされたら"Cancelが格納されている

    Exit Sub

  Case PromptStatus.OK

    '普通に点を指定されたらOKが格納される

    '.Valueに指示されたPoint3Dオブジェクトが格納されている

    pt2ndPos = pptPtRes.Value

End Select


'2点が取得されました

MsgBox("1点目X=" & pt1stPos.X & ",Y=" & pt1stPos.Y & _

" : 2点目X=" & pt2ndPos.X & "Y=" & pt2ndPos.Y)



・ブロックを挿入

・図面に新規ブロックを挿入

・オブジェクトの分解

・ユーザーの入力の制御

・交点を求めるIntersectWithの使い方

・オブジェクトの回転 TransformBy

・データーベースAccessからデーターを取得

・画僧の追加の仕方

・グループの作り方

・ダイナミックブロックのプロパティの変更

・ブロックの属性変更

・インターフェースの実装

・DataGridViewの使い方

必要になったので調べてみた。



Dim strFullPath As String


strFullPath = System.Reflection.Assembly.GetExecutingAssembly().Location



で、例)C:\Program Files\HogeFolder\Hogehoge.exe と返ってくる。


フォルダ名を知りたい場合は、



System.IO.Path.GetDirectoryName(strFullPath)


で、例)C:\Program Files\HogeFolder と返ってくる。


たぶん、プログラマの皆様なら、全員知ってる話だとおもう。


今日、発見してまじですごいと思ったwww


定数を何とかケースバイケースで初期化できないかと、


悩んで悩んで、ここにたどり着きました。


定数(正確には、定数ではなく、変数だと思う)を



ReadOnly HOGEHOGE As String



と、宣言し、


クラスのコンストラクタで初期化する。



Private Sub New(strHogehoge As String)

  '定数(まがい)を初期化

  HOGEHOGE = strHogehoge

End Sub



うん、すばらしい。


ipodfile.jpg



届いた♪( ´▽`)

面倒だったお手入れも、

これで楽チンに♪( ´▽`)

iPhoneからの投稿