使用UG UISTYLER 窗体编辑器,创建对话框 part 2
接下来看看自动生成的cs文件里的东西吧,下面是之前保存的窗体的cs文件:
如果仅仅做一些UG开发没有太多的语言基础,那并不需要去了解初始函数内的东西。只需要了解下3类入口函数如何修改和如何应用就可以了。
在上图中可以看见有3种方式来使用这个类来调出之前的dlg:菜单方式、回调方式、用户方式。下面记录一下这3类方式的使用方法。(有什么错误的地方,欢迎留言指出)
1. 菜单方式:这种方式我没用过,但直观上来说只要将“#if MENUBAR_COMMENTED_OUT”和“#endif // MENUBAR_COMMENTED_OUT”行前面加上"//"注释掉,应该就可以用了。(如果不行,请自行忽略这一条,如果有人知道这个方式使用的环境(怎么触发)和正确的使用方法,请留言,不胜感谢)。
2.回调方式:如下图,在"#if"和"#end if"两行前面加"//"后,改掉区块内的函数名,比如说OpenTestDlg,那么你在项目中其他的类中就可以直接用“类名.函数名”的方式来调用这个窗体了,这里就是Adf.OpenTestDlg(ref response)。你可以通过反馈的response参数,来判断当前对话框在关闭时,是选择的ok还是cancel。
3. 用户方式:同样在"#if"和"#end if"两行前面加"//",然后如下图所示,将函数名改为Main(),这样如果单独将这个cs类文件编译为dll,这个dll就可以直接被UG 加载了。
另外,在这种模式下,一般为了便于调试,还需要将卸载的方式改为Immediately,如下图:
当这3类方式更改好后,就可以根据需要来调用这个类,也就是显示dlg了。
二:至于回调函数,就是控件在发生某些事件后会触发的函数。例如按钮控件,当按钮被点击后,就会执行我们在编辑器中填写的那个回调函数,这个例子里就是action_0_act_cb这个函数。
三: 还有就是如何在类中访问控件了,比如如何动态控制控件的显示、如何读取和设置控件上的文字。这个也比较简单,但还是要下回再写,码字果然很累,阿弥陀佛。
使用UG UISTYLER 窗体编辑器,创建对话框 part 2的更多相关文章
- 使用UG UISTYLER 窗体编辑器,创建对话框 part 1
在UG 二次开发中,经常需要一些交互的输入,参数的更改啊,零件的选取什么的,UG 自身提供了创建这一类对话框的功能.当然也可以使用MFC或winForm 作为交互.但使用自带的比较快和简洁,风格也统一 ...
- unity编辑器扩展_07(创建对话框,检测按钮的点击,点击按钮后提示信息,保存设置的数据,显示点击按钮后的处理的进度条信息)
代码: using UnityEditor;using UnityEngine; public class ChangeValue : ScriptableWizard { ...
- 【Qt】2.3 使用Qt设计师来创建对话框
安装完Qt OpenSource之后,在开始菜单目录下会有这几个东西. 其中[Designer]是用来设计窗口界面的程序.所以现在可以使用它来设计一个对话框.在[Qt Creator]中,[设计]这一 ...
- NX二次开发-MFC对话框获取UG界面句柄,设置MFC对话框在UG界面固定显示位置
extern "C" DllExport void ufusr(char *param, int *retcod, int param_len) { if (UF_initiali ...
- 详解Linux交互式shell脚本中创建对话框实例教程_linux服务器
本教程我们通过实现来讲讲Linux交互式shell脚本中创建各种各样对话框,对话框在Linux中可以友好的提示操作者,感兴趣的朋友可以参考学习一下. 当你在终端环境下安装新的软件时,你可以经常看到信息 ...
- Android 官方推荐 : DialogFragment 创建对话框
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37815413 1. 概述 DialogFragment在android 3.0时 ...
- [Android Pro] Android 官方推荐 : DialogFragment 创建对话框
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37815413 1. 概述 DialogFragment在android 3.0时 ...
- MFC编程入门之八(对话框:创建对话框类和添加控件变量)
创建好对话框资源后要做的就是生成对话框类了.生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数. 例程Addition是基于对话框的程序,所以程序自动创建了对话框模板IDD_ADDIT ...
- C# WinForm 单例模式(例:同一个窗体只创建一次实例)
//C# WinForm 单例模式(例:同一个窗体只创建一次实例) //打开窗体的事件: Form3 f = Form3.InstanceObject() ; //实例化窗体 f.Focus(); / ...
随机推荐
- 半小时快速了解redis,基于ubuntu 12.04 + redis 2.8.9
一.什么是redis ? 其官方介绍是: Redis is what is called a key-value store, often referred to as a NoSQL databas ...
- 帮助对@Repository注解的理解
定义(来自Martin Fowler的<企业应用架构模式>): Mediates between the domain and data mapping layers using a co ...
- UISegmentedControl 控件
一.创建 UISegmentedControl* mySegmentedControl = [[UISegmentedControl alloc]initWithItems:nil]; 是不是很奇怪没 ...
- android opengl es代码功能
/* * Copyright (C) 2009 The Android Open Source Project * * Licensed under the Apache License, Versi ...
- oracle 密码过期处理
1.查看用户的proifle是哪个,一般是default sql>SELECT username,PROFILE FROM dba_users; 2.查看指定概要文件(如default)的密码有 ...
- mysql.connector操作mysql的blob值
This tutorial shows you how to work with MySQL BLOB data in Python, with examples of updating and re ...
- javascript判断变量是不是空值
JavaScript本身没有判断一个变量是不是空值的函数,因为变量有可能是string,object,number,boolean等类型,类型不同,判断方法也不同.所以在文章中写了一个函数,用以判断J ...
- UVA11149_Power of Matrix
题目简洁明了,给出矩阵,求前k次方和. 不知道这种方法是叫做二分幂还是倍增法,如果有知道的,请告诉我一下. 具体思想是这样的,A^1+A^2+A^3+......A^n=(E+A^(n/2))*(A^ ...
- linux mysql操作命令
1.linux下启动mysql的命令:mysqladmin start/ect/init.d/mysql start (前面为mysql的安装路径) 2.linux下重启mysql的命令:mysqla ...
- HTML5+CSS3学习笔记(一)
HTML5+CSS3概述 HTML5和CSS3不仅仅是两项新的Web技术标准,更代表了下一代HTML和CSS技术.虽然HTML5的标准规范还没有正式发布,但是未来的发展前景已经可以预见,那就是HTML ...