SPIN

原创 2007年09月25日 11:07:00

可用的新控件

微调控件

微调控件旨在替换所有的组合框、列表框和列表视图。它基本上是一个常规编辑框,旁边带有一个左右切换开关。

用户可以左右移动光标以选择微调编辑框中的不同项。如果用户按下“操作”按钮,就会显示所有项的全屏列表,而后用户可以再次使用“操作”按钮来选择一个项。几乎所有的 Smartphone 应用程序都使用这个控件。

EVC 的资源编辑器不识别这个新控件,因此,您必须以文本模式编辑源 RC 文件。下面的示例说明了如何插入该控件:

LISTBOX  IDC_YOURNAME,5,30,90,10,NOT LBS_NOTIFY | LBS_SORT |
         LBS_NOINTEGRALHEIGHT | NOT WS_BORDER | WS_TABSTOP

CONTROL  "",IDS_UPDOWN,"msctls_updown32",UDS_SETBUDDYINT |
         UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS |
         UDS_HORZ | 0x200,0,0,0,0
devspui_fig1_spinctrl

1. 红色圆圈表示微调控件

 

 

这个平台基于Wind ows CE 3.0;对于软件的移植来说,这可是一个好兆头。 不过,这一新的移动平台仍然有很多特殊的地方,例如较小的屏幕、 不支持触摸屏和一些其它的用户界面概念,这些概念可能会成为软件 开发者的潜在问题。关于这些平台间主要的区别,在Introdu ction to Smartphone 2002 for P ocket PC developers中已经列出了。为了感受 一下将各种方面到新平台,我决定移植一个已有的Pocket P C应用程序,它没有使用MFC。Pocket PC 2002 SDK中有一个简单的注册表查看工具例程,名字是“
PSPCMonkey”
,本文就描述了这个程序的移 植过程,包括从用户界面设计到详细实现的各个部分。本文还示范了 Smartphone 2002平台上较为特别的技术,例如:& middot;
使用新的菜单条资源,包括它一个已知的相关问题及 其解决方法。·
创建可扩展的编辑框和列表框。&m iddot;
实现“
回退”
键的支持。& middot;
创建标准的Smartphone 2002标签。 Pocket PCSmartPhone 2002开始最初的第 一步是在Smartphone 2002平台下不做任何的改动来 编译应用程序。它是使用纯粹的API编写的,因此我们有机会从编 译器得到一个很好的结果。我们得到了一个完美的结果&mdash ;

0 error(s) and 0 warni ng(s),就像先前我们所期望的那样。现在让我们来运行这个应 用程序,从Smartphone 2002的角度来看看它吧。这 个结果看起来并不是太好。快速回顾一下这个程序,我们会发现还有 以下的事情要做:·
列表框。根据Smartpho ne 2002的指导方针,列表框应该只包括一行。&middo t;
菜单条。这个应用程序应该包含一个它自己的菜单条。&mid dot;
回退键。应用程序应该支持一个“
回退&rd quo;
键。·
按钮。Smartphone 20 02下是不支持按钮的。·
屏幕区域。控件并不适合 屏幕。对话框能够使用垂直滚动来定位所有的控件。· ;
标签。标签应该和标准的Smartphone 2002标签看 起来一样。·
标题条。标题条应该显示应用程序的名 称,消息框的标题不应该太长。·
控件的行为。Sm artphone是没有触摸屏的。用户界面设计用户界面的设计是 移植中最重要的方面。较小的屏幕、没有触摸屏以及这另一组控件都 应该考虑。用户界面设计应该分为几步。 布局设计在Sma rtphone 2002屏幕上放置控件最主要的规则是&ldq uo;
一个控件应该占据一行”
。建议你使用标签来表 示控件中所显示何种类型的信息。标签应该直接放置在控件的上方。 控件根据Smartphone 2002的指导方针,列表框应该 只包括一行。浏览可以用两种方法实现:使用一个带有左/右按钮的 微调控件以及使用列表的展开视图。列表的展开视图在我们这种情况 下非常有用,因为列表中会拥有很多的项目。在Smartphon e 2002平台下是不支持按钮的,一个好的解决方法是将它们替 换为菜单条上的菜单项。菜单条的动作按钮(左边的软键)将代替鼠 标的点击。用户将使用这个键来进入注册表的键中。第二个软键通常 用于菜单,但是我们现在这个简单的应用程序中还没有菜单。因此, 在菜单条中我们还需要另外一个键:“
回退&rdqu o;
项来代替原应用程序的“
回退/向上&rdquo ;
按钮。行为通常,应用程序的用户界面是依赖于鼠标(手写笔)事 件的。Smartphone 2002则并不会有产生点击事件的 机会,因为它没有触摸屏。在我们这种情况下,我们拥有一个非常简 单的应用程序,但在没有触摸屏的情况下它是无法工作的!问题就在 于列表框是利用点击来浏览的。我们将使用菜单条中特殊的菜单项来 代替这些点击。实现可扩展的列表框和编辑框我们需要减少列表框的 高度,并添加微调控件来实现项目的选择和扩展。以下的资源代码根 据这些需求创建了一个列表框资源。LISTBOX IDL_ LISTBOX,4,15,131,10, WS_TABSTOP | WS_VISIBLE | LBS_ NOINTEGRALHEIGHTCONTROL &quo t;
"
, IDC_UPDOWN, UPDOWN_C LASS, WS_VISIBLE | UD S_AUTOBUDDY | UDS_HORZ | UDS_A LIGNRIGHT | UDS_ARROW KEYS | UDS_SETBUDDYINT | UDS_W RAP | UDS_EXPANDABLE, 0,0,0,0
 

SPIN路由协议

SPIN路由协议是第一个以数据为中心的自适应路由协议,针对于泛洪算法中的“内爆”和“重叠”问题它通过协商机制来解决。由于元数据小于采集到的整个数据,能量消耗比较少,所以节点间通过发送元数据(meta-...
  • SSH5366
  • SSH5366
  • 2017年08月24日 14:30
  • 280

Spin控件使用总结

不知道为什么每个控件都会为难我很久,然后再突然给我提示使我顿悟,唉,可能真的是VC在考验我这个懒人吧,呵呵,我虽然比较懒可是有时候还真的很叫真儿的.这不,一个小小的spin控件和我打了一天的太极,终于...
  • ZWPzym19790304
  • ZWPzym19790304
  • 2010年04月09日 09:53
  • 7927

VC的Spin控件和edit控件

对于这类型的控件,我以为是一个整体,应该是edit的一种不同风格,今天找了半天也没发现有现成的这类型的控件。后来网上查找,发现这是edit和spin控件的组合形式。下面介绍一下具体的实现过程。在对话框...
  • q6541oijhk
  • q6541oijhk
  • 2015年08月01日 20:43
  • 2290

自动模型检测—模型检测工具SPIN安装使用

 1  SPIN 概述1.1 SPIN的历史背景SPIN(Simple Promela Interpreter)是适合于并行系统,尤其是协议一致性的辅助分析检测工具,由贝尔实验室的形式化方法与验证小组...
  • wqsgaara
  • wqsgaara
  • 2007年05月29日 09:01
  • 8707

如何在linux系统下安装spin

1.去网站spinroot下载压缩包spin647.tar.gz 2.解压得到Spin目录 3.进入到Spin目录下的Src6.4.7目录,使用命令make 4.完成后发...
  • lucky_horse_1
  • lucky_horse_1
  • 2017年12月15日 20:12
  • 41

ros::spin()和ros::spinOnce()的意义与区别

距离看ROS的基础教程已经过去一年半的时间了.时间虽然看起来比较长,但是,今天遇到了一个问题让我对这两句话的意义又有了新的认识,所以晚上睡不着也要把问题记录下来。知识一定要经常复习呀。ros::spi...
  • yessharing
  • yessharing
  • 2017年03月24日 01:15
  • 1108

ros::spin() 和 ros::spinOnce() 区别及详解

1 函数意义 首先要知道,这俩兄弟学名叫ROS消息回调处理函数。它俩通常会出现在ROS的主循环中,程序需要不断调用ros::spin() 或 ros::spinOnce(),两者区别在于前者调用...
  • Shawn_Zhangguang
  • Shawn_Zhangguang
  • 2016年12月13日 14:37
  • 346

VC中Spin控件的使用

设置属性: Auto Buddy(自动取关联控件为TAB顺序前一个)Set Buddy Interger(使控件设置关联控件数值,这个值可以是十进制或十六进制)Wrap(数值超过范围时循环)Arrow...
  • huihui0121
  • huihui0121
  • 2010年02月09日 15:15
  • 3203

MFC中Spin control的使用

在编写一个工具时需要对经纬度进行微调,经纬度使用度分秒的格式来呈现的。想到了用控件 Spin Control 来实现。现对这个控件的用法做一个简要的回顾。 新建一个MFC基于对话框的应用程序,工程命...
  • shufac
  • shufac
  • 2014年07月16日 23:15
  • 6135

Ubuntu12.04LTS中安装和使用Spin

一、安装spin和ispin 说明:本方法是建立在读者已经安装了Ubuntu Linux操作系统的基础之上的。 步骤0     安装之前读者应该先下载spin和ispin的压缩文件下载地址:ht...
  • WarriorAlex
  • WarriorAlex
  • 2013年01月27日 21:07
  • 1047
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SPIN
举报原因:
原因补充:

(最多只允许输入30个字)