# Builtin - GUI / 对话框 ## `uiInteger()` 整数。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiInteger(); // 输出:0 ``` ## `uiBoolean()` 真假。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiBoolean(); // 输出:1 ``` ## `uiString()` 字符串。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiString(); // 输出:2 ``` ## `uiDate()` 日期。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiDate(); // 输出:3 ``` ## `uiDouble()` 浮点数。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiDouble(); // 输出:4 ``` ## `uiMarketList()` 市场列表。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiMarketList(); // 输出:5 ``` ## `uiIndexList()` 指数列表。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiIndexList(); // 输出:6 ``` ## `uiStockList()` 股票列表。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiStockList(); // 输出:7 ``` ## `uiSelfBkList()` 自选板块列表。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiSelfBkList(); // 输出:8 ``` ## `uiSysBkList()` 系统板块列表。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiSysBkList(); // 输出:9 ``` ## `uiRightStyle()` 复权方法。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiRightStyle(); // 输出:11 ``` ## `uiCycle()` 周期。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiCycle(); // 输出:12 ``` ## `uiReportDate()` 报告期。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiReportDate(); // 输出:13 ``` ## `uiBasicIdList()` 基本面ID列表。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiBasicIdList(); // 输出:14 ``` ## `uiUserDefine()` 用户自定义。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。返回:整数。数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiUserDefine(); // 输出:17 ``` ## `uiOneDimArray()` 一维数组。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiOneDimArray(); // 输出:18 ``` ## `uiTwoDimDoubleArray()` 二维实数数组。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiTwoDimDoubleArray(); // 输出:19 ``` ## `uiOneDimStringArray()` 一维字符串数组。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiOneDimStringArray(); // 输出:20 ``` ## `uiTwoDimStringArray()` 二维字符串数组。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiTwoDimStringArray(); // 输出:21 ``` ## `uiOneDimDateArray()` 一维日期数组。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiOneDimDateArray(); // 输出:22 ``` ## `uiTwoDimDateArray()` 二维日期数组。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。返回:整数。数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiTwoDimDateArray(); // 输出:23 ``` ## `uiTable()` 数据表。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiTable(); // 输出:24 ``` ## `uiUserData()` 用户数据。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。返回:整数。数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiUserData(); // 输出:25 ``` ## `uiRightDay()` 复权基准日。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。返回:整数。数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiRightDay(); // 输出:27 ``` ## `uiBasicId()` 基本面ID。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。返回:整数。数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiBasicId(); // 输出:29 ``` ## `uiYear()` 年份。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。返回:整数。数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiYear(); // 输出:31 ``` ## `uiMonth()` 月份。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。返回:整数。数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiMonth(); // 输出:32 ``` ## `uiDay()` 日。对话框定义Define参数中的Type字段值,表示输入项目的数据类别。返回:整数。数据类别。 返回:integer ### 示例 ```tsl return rdo2 uiDay(); // 输出:33 ``` ## `promptForFileName(file_name, filter, default_ext, title, initial_dir, save_dialog)` 显示文件打开(保存)对话框。如果选择文件并确定则返回真,否则返回假。 | 参数 | 类型 | 说明 | | ------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------ | | `file_name` | string | 字符串类型。初始的文件名以及返回的文件名 | | `filter` | string | 字符串类型。文件过滤条件。如'Excelfiles?(_.xls)\|_.XLS\|TSLfiles?(_.tsl)\|_.TSL',如果同一个选项有多种过滤方法,则使用”\|”将其分隔。 | | `default_ext` | string | 字符串类型。默认的扩展名,不含有”.”号。 | | `title` | string | 字符串类型。对话框的标题栏。 | | `initial_dir` | string | 字符串类型。初始的目录。 | | `save_dialog` | bool=false | BOOL类型。是否作为文件保存对话框显示。 | 返回:bool ### 示例 ```tsl // 打开保存文件对话框 rdo2 promptForFileName(data, 'Excelfiles ( * .xls)| * .xlsx|( * .XLS)|TSLfiles ( * .tsl)| * .TSL','.xls','保存对话框','C: \\DataStore',1); return data; // 打开打开文件对话框 rdo2 PromptForFileName(data, 'Excelfiles ( * .xls)| * .xlsx|( * .XLS)|TSLfiles ( * .tsl)| * .TSL','.xls','打开对话框','C: \\DataStore',0); return data; ``` ## `inputDialog(title, hint, define, result)` 输入对话框,生成类似于函数、模型运行的时候自动出现的参数输入对话框。如果取消了,返回为假,否则为真。 | 参数 | 类型 | 说明 | | -------- | ---------- | ------------------------------------------------------------------------------------------------------ | | `title` | string | 字符串类型。对话框的标题。 | | `hint` | string | 字符串类型。对话框的提示信息。 | | `define` | tablearray | 对话框的定义,为一个表结构类型,其中包括四个字段: | | `result` | array | 存贮返回每个字段的值,结构为以字段名为下表字段返回值为值的一维数组。字段名为Define里定义的字段Name的值 | 返回:bool ### 示例 ```tsl define := array(); define[0]['Name'] := 'Years'; define[0]['Comment'] := '年数'; define[0]['Type'] := rdo2 uiInteger(); define[0]['Value'] := 10; define[1]['Name'] := 'NeedFunds'; define[1]['Comment'] := '是否需要基金'; define[1]['Type'] := rdo2 uiBoolean(); define[1]['Value'] := 'true'; define[2]['Name'] := 'Name'; define[2]['Comment'] := '输入名称'; define[2]['Type'] := rdo2 uiString(); define[2]['Value'] := '天软'; define[3]['Name'] := 'GenDate'; define[3]['Comment'] := '生成日期'; define[3]['Type'] := rdo2 uiDate(); define[3]['Value'] := now(); if rdo2 inputDialog('测试输入', '测试', define, result) then rdo2 showValue('测试显示', result, false); // 显示如下: // 当选择了确认之后,ShowValue的结果显示出来如下: ``` ## `buildOptionComboValue(values, default_index)` 生成自定义类型uiUserDefine所需的VALUE值。返回的结果为用户自定义类型所需的Value值 | 参数 | 类型 | 说明 | | --------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `values` | string | 其结构为以显示值=返回结果以回车换行相隔的字符串。在用户自定义里下来显示的就是显示值,而下拉代表的结果为TSL语法的返回结果值,如字符串需要加引号。显示名1=返回结果值1 显示名2=返回结果值2 ………………. | | `default_index` | integer | 默认选择的项的索引,索引值从0开始。 | 返回:string ### 示例 ```tsl // 返回结果值为1的Value值 s := 'abcd=0\r bcde=1\r'; return rdo2 buildOptionComboValue(s, 1); // 返回结果值为0的Value值 s := 'abcd=0\r bcde=1\r'; return rdo2 buildOptionComboValue(s, 0); ``` ## `mb_AbortRetryIgnore()` 消息对话框的类型控制字,按钮显示三个:中止(Abort),重试(Retry),忽略(Ignore) 返回:any ## `mb_Ok()` 消息对话框的类型控制字,按钮显示一个:Ok。 返回:any ## `mb_OkCancel()` 消息对话框的类型控制字,按钮显示两个:确定(Ok),取消(Cancel)。 返回:any ## `mb_RetryCancel()` 消息对话框的类型控制字,按钮显示两个:重试(Retry),取消(Cancel)。 返回:any ## `mb_YesNo()` 消息对话框的类型控制字函数,按钮ID显示两个:是(Yes),否(NO)。 返回:any ## `mb_YesNoCancel()` 消息对话框的类型控制字,按钮显示三个:是(Yes),否(No),取消(Cancel)。 返回:any ## `mb_IconInformation()` 消息对话框的图标控制字,显示消息提示,一般对类型控制字消息显示框的装饰。 返回:any ## `mb_IconExclamation()` 消息对话框的图标控制字,显示感叹号,一般对类型控制字消息显示框的装饰。 返回:any ## `mb_IconWarning()` 消息对话框的图标控制字,显示警告图标,一般对类型控制字消息显示框的装饰。 返回:any ## `mb_IconInfomation()` 消息对话框的图标控制字,显示信息提示。 返回:any ## `mb_IconAsterisk()` 消息对话框的图标控制字,显示星号,一般对类型控制字消息显示框的装饰。 返回:any ## `mb_IconQuestion()` 消息对话框的图标控制字,显示问号,一般对类型控制字消息显示框的装饰。 返回:any ## `mb_IconStop()` 消息对话框的图标控制字,显示停止,一般对类型控制字消息显示框的装饰。 返回:any ## `mb_IconError()` 消息对话框的图标控制字,显示错误,一般对类型控制字消息显示框的装饰。 返回:any ## `mb_IconHand()` 消息对话框的图标控制字,显示手,一般对类型控制字消息显示框的装饰。 返回:any ## `mb_DefButton1()` 消息对话框的默认按钮控制字,默认为第一个按钮。天软GUI函数默认按钮通常显示浅蓝色并带有慢闪,如类型控制字消息显示框默认的是第一个按钮。默认按钮控制字一般配合类型控制字合用。 返回:any ## `mb_DefButton2()` 消息对话框的默认按钮控制字,默认为第二个按钮。天软GUI函数默认按钮通常显示浅蓝色并带有慢闪,如类型控制字消息显示框默认的是第一个按钮。默认按钮控制字一般配合类型控制字消息显示框合用。 返回:any ## `mb_DefButton3()` 消息对话框的默认按钮控制字,默认为第三个按钮。天软GUI函数默认按钮通常显示浅蓝色并带有慢闪,如类型控制字消息显示框默认的是第一个按钮。默认按钮控制字一般配合类型控制字消息显示框合用。 返回:any ## `mb_DefButton4()` 消息对话框的默认按钮控制字,默认为第三个按钮。天软GUI函数默认按钮通常显示浅蓝色并带有慢闪,如类型控制字消息显示框默认的是第一个按钮。默认按钮控制字一般配合类型控制字消息显示框合用。 返回:any ## `mb_ApplModal()` 消息对话框的模式控制字,普通模式。 返回:any ## `mb_AppModal()` 消息对话框的模式控制字,应用模式。 返回:any ## `mb_SystemModal()` 消息对话框的模式控制字,系统模式,对话框总在最前端。 返回:any ## `mb_TaskModal()` 消息对话框的模式控制字,任务模式。 返回:any ## `mb_TopMost()` 其他控制字,设置对话框为总在前端。 返回:any ## `mb_Default_Desktop_Only()` 其他控制字,仅仅在默认桌面显示。 返回:any ## `mb_Help()` 其他控制字,对话框中显示帮助按钮。 返回:any ## `mb_Right()` 其他控制字,文字右对齐方式。 返回:any ## `mb_RtlReading()` 其他控制字,从右往左输出文字,对输出Hebrew或者Arabic语言有效。 返回:any ## `mb_SetForeGround()` 其他控制字,设置对话框为前端窗口。 返回:any ## `mb_SetTopMost()` 其他控制字,设置对话框为总在前端。 返回:any ## `mb_Service_Notification()` 其他控制字,服务通知模式,即便无用户登录系统也显示。 返回:any ## `idAbort()` 消息对话框返回字,表明用户选中了Abort按钮。 返回:integer ### 示例 ```tsl a := 3; b := rdo2 messageBox('a>2,要继续吗?', '测试对话框', rdo2 mb_AbortRetryIgnore()); if b=rdo2 idAbort () then return 1; else return 0; // 输出:如选择Abort按钮,则返回1,否则返回0 。 ``` ## `idCancel()` 消息对话框返回字,表明用户选中了Cancel按钮。 返回:integer ### 示例 ```tsl a := 3; b := rdo2 messageBox('a>2,要继续吗?', '测试对话框', rdo2 mb_OkCancel()); if b=rdo2 idCancel () then return 1; else return 0; // 输出:如选择Cancel按钮,则返回1,否则返回0 。 ``` ## `idIgnore()` 消息对话框返回字,表明用户选中了Ignore按钮。 返回:integer ### 示例 ```tsl a := 3; b := rdo2 messageBox('a>2,要继续吗?', '测试对话框', rdo2 mb_AbortRetryIgnore ()); if b=rdo2 idIgnore () then return 1; else return 0; // 输出:如选择Ignore按钮,则返回1,否则返回0 。 ``` ## `idNo()` 消息对话框返回字,表明用户选中了No按钮。 返回:integer ### 示例 ```tsl a := 3; b := rdo2 messageBox('a>2,要继续吗?', '测试对话框', rdo2 mb_YesNo ()); if b=rdo2 idNo () then return 1; else return 0; // 输出:如选择No按钮,则返回1,否则返回0 。 ``` ## `idOk()` 消息对话框返回字,表明用户选中了OK按钮。 返回:integer ### 示例 ```tsl a := 3; b := rdo2 messageBox('a>2,要继续吗?', '测试对话框', rdo2 mb_OkCancel ()); if b=rdo2 idOk() then return 1; else return 0; // 输出:如选择OK按钮,则返回1,否则返回0 。 ``` ## `idRetry()` 消息对话框返回字,表明用户选中了Retry按钮。 返回:integer ### 示例 ```tsl a := 3; b := rdo2 messageBox('a>2,要继续吗?', '测试对话框', rdo2 mb_AbortRetryIgnore()); if b=rdo2 idRetry () then return 1; else return 0; // 输出:如选择Retry按钮,则返回1,否则返回0 。 ``` ## `idYes()` 消息对话框返回字,表明用户选中了Yes按钮。 返回:integer ### 示例 ```tsl a := 3; b := rdo2 messageBox('a>2,要继续吗?', '测试对话框', rdo2 mb_YesNo()); if b=rdo2 idYes() then return 1; else return 0; // 输出:如选择Yes按钮,则返回1,否则返回0 。 ```