PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

PLM之家PLMHome-国产软件践行者

[图文教程] 通过对话框选择多个点实例

[复制链接]

2017-1-16 15:27:51 3723 0

admin 发表于 2017-1-16 15:27:51 |阅读模式

admin 楼主

2017-1-16 15:27:51

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
通过对话框选择多个点实例9 f: C* S  t2 r/ k7 t
) q; Y6 Y# ^  M& k/ r. G( D

% U/ ^3 ?1 J; z4 u6 y' V. zOption Infer On& \6 `- a3 x) s; x0 `
Imports Snap, Snap.Create
$ G. i; E1 D; M! ]8 |- B2 `3 c7 F/ b
; d9 P1 m: t3 u) [/ u; r8 }' This is a very simple example showing you how to use a Snap.UI.BlockForm
6 d: f, b! ~- c9 G( b' to create a dialog that enables the user to select multiple point locations at once.
7 M+ f( ]1 x: X+ A' M" M6 U
1 Z& ?3 H! W, j8 z; o+ tPublic Class SnapBlockFormApplication2 : Inherits UI.BlockForm8 p* d% ]3 r+ @7 O) h

1 W0 D7 y" ~2 c. p# s( z) ~. U    ' Declarations of the blocks on the dialog4 U( N5 w7 Z/ d$ P2 }" g; i

- W) O1 m% Y! c4 z/ Q    Dim ptsBlock As UI.Block.SelectObject* |/ t" l4 ]. n0 R) @" A/ X& o6 z- b: Q
8 f5 c! G5 S/ v/ A5 ~9 P0 N
    ' Constructor for a dialog object
) ]) }: j" V5 H8 D' o. B+ F+ r    Public Sub New()
# @8 B2 b5 B" B; s- q) i1 |4 L
) W6 f& b1 D3 U8 y3 _; C1 Q7 o        Me.Title = "Select Multiple Locations"  ' Text to be shown in title bar of dialog. h3 \  C5 j- z" ^
        Me.Cue = "Please select some locations"   ' Text to be shown in cue line
+ N% G3 y$ \* u  v6 E& Z2 Y; u
        ptsBlock = New UI.Block.SelectObject
0 |- Z6 s. Z- K) `        ptsBlock.AllowMultiple = True
6 M7 @; Y7 g' y  B2 \3 u$ c: y        ptsBlock.MaskTriples =
* u. }" h3 N* N  q! |$ {1 Q            {New NXOpen.Selection.MaskTriple(NXOpen.UF.UFConstants.UF_point_type, 0, 0)}/ S& G" q  e% V% W! Q
        ptsBlock.LabelString = "Select locations"$ s: X( G/ U( l3 v
        ptsBlock.PointOverlay = True6 ?+ }5 o+ S4 ], |/ u
        ptsBlock.SnapPointStates.SetAll(UI.Block.SnapPointState.Selected)
) Z! w+ C9 T  z" k4 o6 x        ptsBlock.MaximumScope = UI.Block.SelectionScope.AnyInAssembly
! S- E# V% ]/ h, _5 s8 `9 E* P: u- d6 ~% n3 p
        ' Add the block to the BlockForm) }2 O. E6 t) X) V
        Me.AddBlocks(ptsBlock)" d- F0 Y0 r# Z9 x
( U# F2 I, I9 _5 K" I$ i
    End Sub
% b" l) H. w% t6 @( z* e) [! }: |! g# ?
    Public Shared Sub Main()
, o2 s# G5 C; j4 ]4 @7 r2 `0 e
6 i# l# C5 E& h3 |1 u        ' Create and display a dialog
1 q* j6 H- i# h+ [. J8 B3 e        Dim myForm = New SnapBlockFormApplication2()% k5 ]! g, O7 ~3 I5 o( |
        myForm.Show()
6 q# p' u9 J$ g
' k2 v3 v4 w1 w6 d8 H; R    End Sub% x- G* j) m" @" T5 |1 q
0 Z* ]0 u& X; \3 ^' o  o+ |3 A- `0 H
    Public Overrides Sub OnApply()- ?! X  Y* I% a9 U- L
0 |& R8 N  R7 N  {
        InfoWindow.WriteLine("You selected these locations:")
7 c# U& E$ P  D  `) ^$ a9 t6 h6 P7 y, A; J- B) E- }$ F9 m7 g
        For Each anObj As Snap.NX.Point In ptsBlock.SelectedObjects
9 N, O. \% C* Z) t# q            InfoWindow.WriteLine(anObj.Position)
2 L# j& ~' v' S2 c* p, ^        Next! q$ x' }+ `% [0 W& f

* d, h* s3 V0 L- I9 [    End Sub
. J/ o7 ]0 R2 A, x' N( A4 L: b
& Z$ d. J: Q/ W, }    Public Overrides Sub OnUpdate(changedBlock As UI.Block.General)
# R( I- r* F' h
- {8 e; h" v3 X        ' This is going to be annoying so don't really do it!+ Q+ N7 Z% N3 `- }# u/ u4 j- _
        If changedBlock = ptsBlock Then
; S4 E' x! O7 s! R3 e            If ptsBlock.SelectedObjects.Length = 1 Then; u! `: a% M  Y/ V
                InfoWindow.WriteLine("You picked a Location")9 J/ I9 i7 _6 |  U
            Else1 p! {4 T, o  S; ]2 D9 S
                InfoWindow.WriteLine("You picked another Location")
7 T' Z/ c# Q% O# E( M& b  W            End If
/ n/ O, ], g: t& @        End If
% w# Z* C. `1 K* Y0 L: q5 L3 K
2 Z* \/ k5 S4 z8 y    End Sub$ f9 V7 u+ R. h% @9 e1 i, c2 ~5 e' u9 [
9 f5 L# |9 }9 _6 a5 A7 [
    Public Shared Function GetUnloadOption(ByVal dummy As String) As Integer# e4 E+ O" d: M6 B/ U6 o# P2 [
        Return Snap.UnloadOption.Immediately
1 ^  u) z0 V. z! w4 r: i2 {, h    End Function
  e" {* F4 C7 y% V: _' S. y! F5 D) R2 j* y  E/ `* B7 N7 P( n
End Class
0 u" M6 Z. R" @) U2 I
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了