gusucode.com > vision工具箱matlab源码程序 > vision/+vision/+internal/+ocr/+tool/SettingsDialog.m
% ocr training app settings dialog classdef SettingsDialog < vision.internal.uitools.OkCancelDlg properties Font FontPopup FontList end %---------------------------------------------------------------------- methods function this = SettingsDialog(groupName, font) dlgTitle = vision.getMessage('vision:ocrTrainer:SettingsDialogTitle'); this = this@vision.internal.uitools.OkCancelDlg(groupName, dlgTitle); this.DlgSize = [450 146]; createDialog(this); addOK(this); this.Font = font; doLayout(this); end %------------------------------------------------------------------ function list = get.FontList(~) list = listTrueTypeFonts; end end %---------------------------------------------------------------------- methods(Access = protected) function onOK(this, ~, ~) selection = this.FontPopup.Value; this.Font = this.FontList{selection}; this.IsCanceled = false; close(this); end end %---------------------------------------------------------------------- methods(Access = private) function doLayout(this, ~, ~) uicontrol('Parent', this.Dlg, 'Style', 'text',... 'Units', 'pixel',... 'Position', [15 105 400 13],... 'HorizontalAlignment', 'left', ... 'String', vision.getMessage('vision:ocrTrainer:SettingsDialogText')); uicontrol('Parent', this.Dlg, 'Style', 'text',... 'Units', 'pixel',... 'Position', [38 70 41 17],... 'HorizontalAlignment', 'left', ... 'String', 'Font:'); % Select the current app font by default. selection = find(strcmp(this.Font, this.FontList), 1); if isempty(selection) selection = 1; end this.FontPopup = uicontrol('Parent', this.Dlg, 'Style', 'popup',... 'Units', 'pixels',... 'Position', [86 70 270 22],... 'String', this.FontList,... 'Value', selection); end end end