知识点:
1、界面框架结构与编写实现;
2、界面事件响应与图像显示;
3、弹出界面构建与事件响应;
4、JPEG 文件选择、读取与显示;
源代码:
PRO SELECTFILE_EVENT,ev
WIDGET_CONTROL,ev.TOP,get_UValue = pState
CASE WIDGET_INFO(ev.ID,/uname) OF
'select': BEGIN
;
file = DIALOG_PICKFILE(filter ='*.jpg')
IF QUERY_JPEG(file) EQ 1 THEN BEGIN
;
(*pState).RESULT = file
WIDGET_CONTROL,(*pState).WTEXT, set_Value = file
ENDIF
END
'ok' : WIDGET_CONTROL,ev.TOP,/destroy
ELSE:
ENDCASE
END
FUNCTION SELECTFILE
;
tlb = WIDGET_BASE(title ='选择文件',/row)
wText = WIDGET_TEXT(tlb,xsize =20)
wButton = WIDGET_BUTTON(tlb,value = '选择 JPG 图像',uname ='select')
wButton = WIDGET_BUTTON(tlb,value = '确定',uname ='ok')
;
WIDGET_CONTROL,tlb,/realize
pState = PTR_NEW({wText:WTEXT,result:''})
WIDGET_CONTROL,tlb,set_UValue = pState
XMANAGER,'selectfile',tlb;,/no_block
r = (*pState).RESULT
PTR_FREE,pState
RETURN,r
END
PRO WTLB_EVENT,ev
WIDGET_CONTROL,ev.TOP,get_uvalue= pstate
评论0