Matlab图形用户界面的介绍与设计, k m9 F) l7 S8 \* [* }
% n% c9 C2 x/ w, y3 l/ b
随着面向对象技术的兴起,图形用户界面(GUI)设计变得更加流行。通过GUI界面,一方面大大减轻了程序设计者的负担,加快了设计者的程序设计工作;另一方面用户可以非常直观、轻松的与计算机交互,而不必了解应用程序是如何执行各条命令的,只要掌握图形界面的各个组件的使用方法即可。在matlab中基本的图像对象主要包括坐标轴对象、空间对象、下拉菜单对象和内容式菜单对象。通过这些对象可以设计出界面友好、功能强大、操作简单的图形用户界面。6 m& X8 E$ L5 A h' r3 I
0 B9 ~4 K' Q# Z 在matlab中,每一个图像对象都有唯一一个句柄(Handle)和一组定义图像对象外观的属性(Properties),通过这二者来控制图像的行为和外观。对“句柄图形”的理解是设计和实现GUI的前提条件。另外,作为一种事件驱动型编程,回调函数的编写是MATlaB程序设计者的一项重要任务。! u8 ~$ Y( m7 K- |8 F8 f
% q3 [, c' R: AGUI的设计原则+ b5 D: p& r9 E
" t* ]( Q* A/ d5 W. p, k' B 它和一般动态界面设计原则是一致的都强调以下几点:6 l" B5 }( _2 p1 j/ V; `% x
- [6 Y, s+ H, n4 N
1) 关注用户任务而不是技术 ) \# e/ F: }5 a0 n8 y! R# _: \% w8 o* T% K9 o/ J* b6 c
设计图形界面的目的是为了帮助用户简化操作,让用户尽可能少花费时间而更加流畅的执行更多的任务。所以,GUI设计者要更多关注用户需求,把人物设计得更为用户理解,不要单纯的为追求某种技术而忽视了用户需求。 E/ G) p. @3 p
. g: w$ D+ V, D2 J- v
2)功能优先,表现次之 - X3 S1 ?& Z( B7 K4 v, {" X1 x; t2 }! J
坚持实现界面程序的功能放在首位,不能为了表示方便或者界面更加美观而牺牲或消弱部分功能。 5 ^1 }2 T6 C8 V N) ~9 Y! ^7 n) Y5 u$ ?0 V: N b
3)从用户的视角看问题,使用用户的词汇进行描述;9 Y% _& k& K$ B4 e
) T9 ? P" w9 M2 [+ d5 {8 j
程序中设计的用语和词汇都要从习惯用语和词汇出发来考虑。 : Z# E+ Y1 ^* q5 Z! u) S' {: [: I: W" w% I% b/ r5 a* q1 q
4)不要向用户暴露实现细节 8 Q# r, g+ V, c + Q. s4 x6 E: N6 ?; J 5)保持一致性,引导用户的使用习惯8 X' T1 G# `( q# \" ` D4 q
; D3 z# e) L& r& L6 i8 ^GUI设计的一般步骤 9 m, T: n. w! a( I5 {9 ?9 S; d 1 g7 Q% |6 r8 _/ n) o0 M: S, Z$ a) | 1)设计用户界面的大致风格 3 A+ D3 \# E5 p1 I . E9 q% }' D6 g/ A! |: I# w 2)添加用户界面程序所需的组件;, X1 d4 @2 h/ f. L- m
# q% }: Z4 Y6 l3 R/ ` 3)设置各组件的属性; " L( _9 U6 u. r3 d, u, i) f $ _$ q$ x' A4 r0 s% w; x' ^0 B 4)编写回调函数; ' X/ p7 E" N9 _1 b9 c, u, o0 ]) h* V3 `! o6 [' o
5)调试; # Z& n" s N& @5 K$ S: ?0 y- a