IDL第七章 界面与事件处理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Result:1或0,1代表open,0代表取消
7.1.2 对话框界面组件-dialog_write_image
Result =DIALOG_WRITE_IMAGE ( Image )
Image:数据
Result:1或0,1代表保存,0代表取消
7.2
Widget_button示例
toolbase = WIDGET_BASE(tlb,/row,/toolbar) a = WIDGET_BUTTON(toolbase,value = 'button1',tooltip = 'first button') b = WIDGET_BUTTON(toolbase,value = 'button2',tooltip = 'second button') c = WIDGET_BUTTON(tlb,value = 'button3',tooltip = 'third button') testbase = WIDGET_BASE(tlb,/row) d = WIDGET_BUTTON(testbase,value = 'button4',tooltip = 'forth button') f = WIDGET_BUTTON(testbase,value = 'button5',tooltip = 'fivth button')
面向对象程序设计——IDL
第七章 界面与事件处理
ຫໍສະໝຸດ Baidu
第七章 界面与事件处理
7.1 界面组件
7.1.1界面单元组件 7.1.2对话框界面组件
7.2 界面事件 7.3 界面程序编写
7.1 界面组件
界面组件是窗体程序设计中重要的组成部分, 界面组件为窗体程序提供大量的外观组件设计 和封装好的功能组件,具体包括:
7.1.1 界面单元组件- Widget_base
Result = WIDGET_BASE( [Parent] [, /ALIGN_*** |] [, /BASE_ALIGN_*** | ,] [, BITMAP=value] [, COLUMN=ncols | , ROW=nrows] [, /EXCLUSIVE | , /NONEXCLUSIVE] [, MBAR=variable | , /MODAL][, TITLE=string] [, /TOOLBAR] [, XSIZE=value] [, YSIZE=value] ) [Parent]:父窗体
Widget_draw示例
tlb = WIDGET_BASE(xsize=400,ysize=400,/colu mn,mbar =mbar,title ='test_button') wDraw = WIDGET_DRAW(tlb, xSize =200,ySize =200) WIDGET_CONTROL,tlb,/realize widget_control,wdraw,get_value=idraw print,idraw,wdraw wset,idraw tv,dist(200)
7.1.1 界面单元组件- Widget_button
Result = WIDGET_BUTTON( Parent [, /ALIGN***] [, /BITMAP] [, /MENU] [, VALUE=value] [, XSIZE=value [, YSIZE=value] )
界面单元组件 Widget_base:窗体(含主菜单),组件容器 Widget_button:按钮 Widget_draw:画板/显示窗体 Widget_lable:标签 Widget_text:文本框 Widget_list:列表框 Widget_combobox:组合框 Widget_droplist:下拉框 Widget_displaycontextmenu:右键菜单
7.1.2 对话框界面组件
对话框方式进行信息处理 Dialog_pickfile Dialog_message Dialog_read_image Dialog_write_image
7.1.2 对话框界面组件-dialog_pickfile
Result = DIALOG_PICKFILE( [, /DIRECTORY] [, FILE=string] [, FILTER=string/string array] [, GET_PATH=variable] [, /READ | , /WRITE] [, TITLE=string] )
Result:返回值为文件名(含目录)
7.1.2 对话框界面组件-dialog_message
Result = DIALOG_MESSAGE( Message_Text [,
/CANCEL] [, /ERROR | , /INFORMATION | , /QUESTION] [, TITLE=string] )
7.1.2 对话框界面组件-dialog_read_image
Result= DIALOG_READ_IMAGE ( [Filename] [, FILE=variable] [, GET_PATH=variable] [, IMAGE=variable] [ ,TITLE=string] )
界面单元组件:最基础的界面组件,窗体、菜单、 按钮、文本框等 复合界面组件:集成多个组件并具有一定功能的界 面组件 对话框界面组件:比如对话框选择文件、对话框提 示消息 功能界面组件:一些带有界面组件的IDL功能函数 ,比如选择和设置颜色的工具xloadct等
7.1.1 界面单元组件
7.1.1 界面单元组件- Widget_draw
Result = WIDGET_DRAW(Parent [, GRAPHICS_LEVEL=2] [, XSIZE=value] [, YSIZE=value])
Parent
[, GRAPHICS_LEVEL=2]:对象图形法,默认直接图形法 [, XSIZE=value] [, YSIZE=value]:宽度和高度
7.1.1 界面单元组件-显示
Widget_control:组件控制,包括显示,属性设 置,属性读取等
WIDGET_CONTROL [, Widget_ID] [, Widget_ID]:组件ID号,每个组件函数的返回值
Widget_info:查询组件信息 界面组件中,最顶层的那个必须是widget_base 组件。
Message_Text:消息框内容
[, /CANCEL]:取消,提供一个取消按钮 [, /ERROR | , /INFORMATION | , /QUESTION]:消息 框类型,错误,信息,疑问,默认是警告(Warning) [, TITLE=string]:标题名称 Result:结束对话框的按钮信息, “Yes”, “No”, “OK”, and “Cancel”。
Parent:父窗体
[, [, [, [, [, /ALIGN_*** |]:组件在父窗体中排列位置 BITMAP=value]:图标 /MENU]:按钮是一个下拉菜单 XSIZE=value]:宽度 YSIZE=value]:高度
Widget_button示例
tlb = WIDGET_BASE(xsize=400,ysize=400,/column,mb ar =mbar,title ='test_button') menu = WIDGET_BUTTON(mbar, value ='file(&F)') fmenu = WIDGET_BUTTON(menu, value ='open') sMenu = WIDGET_BUTTON(menu, value ='save',/menu) eMenu = WIDGET_BUTTON(menu, value ='exit',/SEPARATOR)
Widget_button示例
dbase = WIDGET_BASE(tlb,/row)
exbase = WIDGET_BASE(tlb,/EXCLUSIVE,/column) eb1 = WIDGET_BUTTON(exbase,value ='cc') eb2 = WIDGET_BUTTON(exbase,value ='dd') nexbase = WIDGET_BASE(tlb,/NONEXCLUSIVE,/column) eb1 = WIDGET_BUTTON(nexbase,value ='envi') eb2 = WIDGET_BUTTON(nexbase,value ='idl') WIDGET_CONTROL,tlb,/realize
Widget_base举例
w1=widget_base(bitmap=bindgen(30,30,3)) widget_control,w1,/realize w2=widget_base(bitmap=bindgen(30,30,3), title="idl窗体",xsize=400,ysize=200) widget_control,w2,/realize w3=widget_base(bitmap=bindgen(30,30,3), title="idl窗体",xsize=400,ysize=200) widget_control,w3,/realize
[Filename]:文件名,可选的位置参数 [, FILE=variable]:输出文件名(含路径) [, GET_PATH=variable]:输出路径 [, IMAGE=variable]:输出影像数据 [ ,TITLE=string]:对话框标题名称,,缺省“open image file”
[, [, [, [, [, [,
/DIRECTORY]:选择目录 FILE=string]:给定固定的文件名(string) FILTER=string/string array]:后缀名筛选 GET_PATH=variable]:输出文件路径 /READ | , /WRITE]:文件读还是写,写可以新建文件 TITLE=string]:标题名称
[, /ALIGN_*** |]:组件在父窗体中排列位置 [, /BASE_ALIGN_*** | ,]:组件的子组件排列位置 [, BITMAP=value]:图标
7.1.1 界面单元组件- Widget_base
[, COLUMN=ncols | , ROW=nrows]:子组件的排列方 式和个数 [, /EXCLUSIVE | , /NONEXCLUSIVE]:排它性与非排 它选择按钮组件容器 [, MBAR=variable | , /MODAL]:菜单 [, TITLE=string]:标题 [, /TOOLBAR]:工具栏容器 [, XSIZE=value]:窗体宽 [, YSIZE=value]:窗体高