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

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

admin 楼主

2017-1-16 15:27:51

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

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

x
通过对话框选择多个点实例
. A/ j0 R7 e: P+ t% `; c. ?$ U" O6 ?$ H. ]

$ z: b- B8 U! {* lOption Infer On
7 \4 c$ D, ]6 h. I6 A8 D7 w$ hImports Snap, Snap.Create
+ E; ^- O% S7 F; M- P
/ A4 e) d- A" E8 e2 Q' This is a very simple example showing you how to use a Snap.UI.BlockForm
% G; a# I# p. U' to create a dialog that enables the user to select multiple point locations at once.
/ f6 N! W9 F" C" u' A
3 |+ K8 ^  x: Z3 IPublic Class SnapBlockFormApplication2 : Inherits UI.BlockForm
) p# ]+ ^; h* l5 w
$ r; [  g; a% ]! E+ a/ T    ' Declarations of the blocks on the dialog5 B4 Q* N  e' L$ u! R" G

: H  w0 w1 b( e* A- Q    Dim ptsBlock As UI.Block.SelectObject( A  ^% v" S" }

- Z3 k- M5 t3 _1 k+ ^5 w7 l% W5 y, F    ' Constructor for a dialog object
9 p1 f' i) e9 o1 u( D# S7 ^    Public Sub New()  q3 C) t5 }" N: ~- X9 F, f

: h+ R0 D; w) ~! `. [        Me.Title = "Select Multiple Locations"  ' Text to be shown in title bar of dialog6 P" t" K9 @, p4 X2 u  y5 d
        Me.Cue = "Please select some locations"   ' Text to be shown in cue line6 D8 x" _$ x/ w6 p% e
! e; M+ {. B3 J9 p1 Z8 Y& e
        ptsBlock = New UI.Block.SelectObject! B1 Z, u/ |, }% g+ P# U% R1 A
        ptsBlock.AllowMultiple = True
2 V) @' f( K3 u, b* W, x        ptsBlock.MaskTriples =
% p; n7 J+ k3 \            {New NXOpen.Selection.MaskTriple(NXOpen.UF.UFConstants.UF_point_type, 0, 0)}
8 A. v4 I& p/ K" Q, B        ptsBlock.LabelString = "Select locations"
  x/ h5 N8 |3 ]        ptsBlock.PointOverlay = True( |8 R/ l9 o3 b7 W: N  i& W
        ptsBlock.SnapPointStates.SetAll(UI.Block.SnapPointState.Selected)! K; ^( f, U* Q+ z1 Z. ?
        ptsBlock.MaximumScope = UI.Block.SelectionScope.AnyInAssembly! d1 u% d0 p% `9 y3 n! z
2 s7 d; y- `$ m, X
        ' Add the block to the BlockForm; y# o4 g! ?% S, K/ s
        Me.AddBlocks(ptsBlock)/ A" Z2 q* t+ H+ d" m! ~+ Z
" F+ _/ w4 T, W: L$ G  s7 V. A
    End Sub6 u, i: G* R/ e0 l
7 I' g" V) A* z8 c* X# D3 S2 ?6 Y
    Public Shared Sub Main(), n7 j4 N! E1 Z# ]8 Y% A

+ B+ B, q# i' V9 P2 y2 x        ' Create and display a dialog
( J% a  g" J1 r; y4 A  G" @& Y        Dim myForm = New SnapBlockFormApplication2()% s4 W* A3 B  K4 Y: Y( U' N" [
        myForm.Show()
: V) N. I$ w: S0 o
2 ?0 |, ~' {' L5 S6 J0 `! ]    End Sub
* w' R0 @' y0 \4 J7 x. P* @5 N6 p4 h# o6 C/ G4 {+ M; F
    Public Overrides Sub OnApply()
. F, K# }2 `2 F7 `2 U& k4 ^4 ^. }1 q, B+ i( v
        InfoWindow.WriteLine("You selected these locations:")
9 ~% b; b# @; O  g3 Y/ Z- h' z& e
6 q3 `1 b5 i) a$ o/ p8 z        For Each anObj As Snap.NX.Point In ptsBlock.SelectedObjects$ A4 B9 h% h, Q) s# X/ k3 K/ j
            InfoWindow.WriteLine(anObj.Position)
1 F7 ]$ j: X0 ^( ?        Next
% j: A' x2 j' H3 a" q+ A% r; ^+ i
    End Sub
' Z: {  h' Q, I9 {9 o
3 h% J' }5 Y) O6 {9 S5 J2 M    Public Overrides Sub OnUpdate(changedBlock As UI.Block.General)) W1 C5 X9 C: v5 S) B; M/ }4 p" V) S8 H

9 E& o( z' [6 g  r        ' This is going to be annoying so don't really do it!, `( W  w- |* {  u
        If changedBlock = ptsBlock Then
& X+ n1 L- N4 j            If ptsBlock.SelectedObjects.Length = 1 Then" |- O  o, S; b
                InfoWindow.WriteLine("You picked a Location")
$ h, ]' F( u( F5 Y- T3 W            Else
$ x- y& ?8 y8 d; J0 |; x5 A                InfoWindow.WriteLine("You picked another Location")
/ o4 \2 G+ |6 u8 c" ]4 _; \* g            End If0 ^0 [* Z; ]. w5 ]( d  F6 i" L
        End If
; K$ C) o. j  f& b6 y* |& p5 P" ?! n$ _7 a/ ?8 @* ?! N) c  s
    End Sub
9 H! ^$ D/ z+ B3 d" h& b) Z2 u
$ ?; ?( z9 h+ u& K! M  M# j+ ~    Public Shared Function GetUnloadOption(ByVal dummy As String) As Integer# ^/ P! c$ c+ }0 g
        Return Snap.UnloadOption.Immediately; d, A3 R8 l. r
    End Function) [- d( t% v7 U* e6 T

+ h4 x6 g$ Q' l" I+ W4 ?+ \# u: N, KEnd Class
" n; C) R- j  V8 V, h
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了