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 3918 0

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

admin 楼主

2017-1-16 15:27:51

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

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

x
通过对话框选择多个点实例# r, s" `& `8 m7 A; O5 T
  S9 @! S- Y/ O% u

/ A* c8 ?5 o. F1 @6 f5 o: k/ I/ |Option Infer On
% T! S) a5 v2 c9 y% f; _; yImports Snap, Snap.Create6 s: @/ j1 ~  k
( o- l6 I% ]1 Z3 m3 }, W
' This is a very simple example showing you how to use a Snap.UI.BlockForm
1 `4 J3 g) a0 D' E& t8 x' to create a dialog that enables the user to select multiple point locations at once.
7 l4 {/ C4 ]6 O4 o. ]' N
- j% J9 `7 w" M: ^* J. K# XPublic Class SnapBlockFormApplication2 : Inherits UI.BlockForm
8 G( R9 u6 x$ S1 J* \8 K. P! r  h3 D( ~# e9 f" q+ J" k
    ' Declarations of the blocks on the dialog& H& V2 m7 J- W
% B7 n: H" H. L2 E7 t% U
    Dim ptsBlock As UI.Block.SelectObject2 b( ^/ O1 j0 N5 F
: O0 {6 ?- _7 ~. W  t) @, W
    ' Constructor for a dialog object
9 o$ @- o8 I7 Q2 c7 u' d    Public Sub New()
/ I2 C4 O( Y1 Q5 U) h3 l0 ^7 s! R. G  R9 I3 R
        Me.Title = "Select Multiple Locations"  ' Text to be shown in title bar of dialog
+ y) ~$ `3 r4 c, A        Me.Cue = "Please select some locations"   ' Text to be shown in cue line
3 C, U; @7 u9 z5 r4 Y/ L
/ i* J( u; a% S% e  b        ptsBlock = New UI.Block.SelectObject
8 B5 \7 Y+ F8 l: i5 ^+ F2 S        ptsBlock.AllowMultiple = True8 C% d/ A& t. W( a" d1 S
        ptsBlock.MaskTriples =; X6 b3 |8 ]8 E
            {New NXOpen.Selection.MaskTriple(NXOpen.UF.UFConstants.UF_point_type, 0, 0)}
+ ~: ^  c4 e$ g. l1 _% G* j0 Q        ptsBlock.LabelString = "Select locations"
& e  I$ w, C7 o/ m0 {        ptsBlock.PointOverlay = True' ?; O& G  ^$ P2 t  Z5 |
        ptsBlock.SnapPointStates.SetAll(UI.Block.SnapPointState.Selected)
7 |5 j5 ^% {9 O! N  a4 y: o' i        ptsBlock.MaximumScope = UI.Block.SelectionScope.AnyInAssembly- D( [( s9 d9 c( l# s; O" p
2 l) ?0 G) ?5 @" R( S
        ' Add the block to the BlockForm% O4 o; f  l2 C7 G2 n1 q$ Z
        Me.AddBlocks(ptsBlock)" |% W* ?: ?" n+ [# I- k8 |
7 x( \1 C$ o) h
    End Sub
0 Z" ?: W: [3 y' t5 v8 k. @% D/ j8 @, o1 d* @8 C7 X
    Public Shared Sub Main()
, v& z* p: C3 a" V% X* H1 J
* j6 Y  O( e/ ?- p3 d$ O        ' Create and display a dialog9 k* L9 G4 E1 a& _; ?
        Dim myForm = New SnapBlockFormApplication2()7 p5 O* P2 a! E% _( O! c" e
        myForm.Show()
, b2 ~& S$ K1 D: Y: w2 |8 f
8 c- h# n: F  ^4 M9 p; o% k; ^    End Sub) e4 H: j" w0 e; W( c& p
9 w5 w" }5 |" r6 a
    Public Overrides Sub OnApply()! k3 O* Z  r/ l! b) A2 k  T

$ i- Q: ]0 Z6 b2 M2 x        InfoWindow.WriteLine("You selected these locations:")
9 q! [7 u% _$ m0 b* G/ L+ _* b( k: E! _, D
        For Each anObj As Snap.NX.Point In ptsBlock.SelectedObjects
2 P7 `" t7 o  m6 Q6 e            InfoWindow.WriteLine(anObj.Position)
% m( {) [# s9 \$ ]        Next
/ _5 y# A) e5 e+ `4 R% X# T& O+ ^) t$ }. p" w, ^, T
    End Sub
# e( m6 h5 t& V: R3 ?0 g; V: }& q: h! X& V
    Public Overrides Sub OnUpdate(changedBlock As UI.Block.General)
: j5 m+ J; [7 |
3 y% A' S" a3 ], _; W        ' This is going to be annoying so don't really do it!
! \  }! g/ l# J1 T: I        If changedBlock = ptsBlock Then
3 q$ t8 l( c( r2 ~- `            If ptsBlock.SelectedObjects.Length = 1 Then
8 M) W' h' v2 I0 O& h7 q: [                InfoWindow.WriteLine("You picked a Location")
. J. B* r  Q. i  P0 N            Else
5 W$ f3 h; r. U/ ?                InfoWindow.WriteLine("You picked another Location")4 R) g0 F3 u/ x2 Y' U, R
            End If
% m3 I; v" v; w1 a7 o% n        End If8 K$ v+ S8 I  n1 g5 ~# S; H7 b' r& U

. j4 J- x% N, _9 M2 a0 k5 x8 m6 {5 {( w    End Sub
% S; q4 ]/ w% @7 X' [, y) f2 N6 S1 t/ ]: H
    Public Shared Function GetUnloadOption(ByVal dummy As String) As Integer& }/ Y9 ~/ n0 r# Q+ U
        Return Snap.UnloadOption.Immediately
" C" M% D/ {. A0 [5 b    End Function0 g9 C+ r0 o' w1 a
. F* D1 K8 }. \4 O( d$ |
End Class
( N  p3 R7 _. N3 m
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了