注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

信息 灵感 创新

I? =Information,Inspiration,Innovation

 
 
 

日志

 
 
关于我

we are 5. Mathematics, Computation, Programming, Engineering, and Making fun of life.

网易考拉推荐

uc1600和uc1601  

2014-02-24 16:41:06|  分类: UG NX |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

uc1600 - uc1613用于显示各种对话框,都是只能工作在内模式下,下面分别通过例子介绍。

这两个函数位于头文件uf_ui.h下,uc1600用于获取输入的文本值,而uc1601则用于显示一个消息框或者在状态栏中显示文本。下面是测试的代码。

#include <uf.h>
#include <uf_ui.h>
#include <uf_exit.h>
#include <string>
void TestFunc();
//入口函数
extern DllExport void ufsta( char *param, int *returnCode, int rlen )
{
    if(UF_initialize()) 
        return;
    TestFunc();
    UF_terminate();
}
void TestFunc()
{
    int res = 0;
    int len = 0;
    char str[100]="Castor";
    char greet[255]="Greeting! ";
    /*
    返回值
    1 = Back 
    2 = Cancel 
    3 = OK(Accept default) 
    5 = Data entered
    8 = Disallowed state, unable to bring up dialog 
    */
    res = uc1600( "Please input your name:",str, &len);
    switch (res)
    {
    case 1:
        uc1601("You Pressed 'Back'",1);
        break;
    case 2:
        uc1601("You Pressed 'Cancel'",1);
        break;
    case 3:
        uc1601("So you used the default name",1);
        break;
    case 5:
        uc1601(strcat(greet,str),1);
        break;
    case 8:
        uc1601("Disallowed state, unable to bring up dialog",1);
        break;
    default:
        uc1601("I do not know what's happened.",1);
    }
    uc1601("Line 1*Line 2.",0);
    uc1601("Line 1*Line 2.",1);
}
//退出函数
extern int ufusr_ask_unload()
{
    return UF_UNLOAD_UG_TERMINATE;
}
根据选择的不同,可能弹出的消息框如下:
CX_0224_161338
加载后的窗体
CX_0224_161354
直接点击确定
CX_0224_161406
输入新名称,点击确定
CX_0224_161414
点击后退
CX_0224_161422
点击取消
CX_0224_162448
两种不同的消息显示方式
  1. 最后,关于这两个函数,还得补充说三点。
  2. 1.uc1600中如果将提供的默认参数删除,但不提供自己的参数,然后点击确定,这个时候默认参数的值并不会修改,并且,所使用的字符串长度不应该超过132;无论何时,点击右上角的叉叉和点击取消的效果是一样的。
  3. 2.uc1601函数,如果需要显示多行,则应该使用星号(*)作为换行符,而不是转义符(\n),使用转义符会造成不可预料的移位。另外,由于状态栏只有一行,因此,在状态栏中,星号(*)会被转换为减号(-),并且前面和后面会各加上一个空格。
  4. 3.最后就是要吐槽的地方了。可能是UG本地化的原因吧,我代码中分明写的是Line 1和Line 2,结果显示的时候,Line 1居然被自作主张地替换成了第一行,呵呵。
 
 
  评论这张
 
阅读(916)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016