Qt和S60环境设置管理比较
From Forum Nokia Wiki
- 平台:S60 3rd Edition FP2, S60 5th Edition
- 类别:Qt
- 子类别:Base/System
- 关键字:QSettings
概述
本文给出Symbian OS和Qt之间环境配置管理的比较。下面也给出了创建、设置和获取环境设置值的样例代码。
描述
在Symbian和Qt中,环境设置都是以键/值对的形式储存。然而二者的环境设置文件保存路径是不同的。
操作 |
S60/Symbian OS |
Qt |
环境设置机制 |
中央仓库 |
Conf文件 |
键的创建 |
通过xls或confml预先定义环境设置键,并被赋予缺省值。 |
环境设置从应用程序动态创建,并储存在.conf文件中。 |
环境配置文件的存储格式 |
平台创建.cre文件,应用程序在这个文件中储存/恢复环境值。.cre文件不是人类可读的格式。 |
不生成.cre文件。直接存储在人类可读的.conf文件。 |
环境配置键的组织 |
环境配置无层次结构 |
可在键中维护层次结构。例如:所有从属于UI的环境配置可作为子键放在主UI键下。 |
访问以平台相关格式储存的环境设置 |
可访问平台或其它应用程序环境设置,因为所有的配置都是.cre格式。 |
通过扩展类如XQSettingsManager可访问储存在中央仓库的键/值。 |
类 |
CRepository |
QSettings |
创建环境配置类的实例 |
CRepository::NewL |
QSettings settings("CompName", "AppName"); 含有 CompName 的目录将被创建,且conf文件创建于该目录,名称为 AppName 。 |
设置值 |
CRepository::Set |
QSettings::setValue |
获取值 |
CRepository::Get |
QSettings::value |
环境设置改变通知 |
是可行的,借助 CCenRepNotifyHandler 。 |
无直接类检测 QSettings 键值的变化。通过 XQSettingsManager 及其关联类来检测cenrep键变化是可行的。 |
方案
在Qt应用中,你可以或者使用 QSettings ,或者继续使用 cenrep (通过 CRepository 类或更好的移动扩展Mobile_Extensions#13._Settings_Manager_API)。 QSettings 类提供了平台无关的持久化机制。
下例演示了在Qt中环境设置的创建:
MyApplication::MyApplication(QWidget *parent)
: QWidget(parent)
{
//The company name and application name need to be passed as a parameter.
//The path of storing the settings is based on these input parameters
QSettings setting(“Company", "MyApplication");
//Setting an int value
QVariant value = 10; //or we can also assign int value = 10
setting.setValue("Engine/TimeOutPeriod", value);
//Setting a string value
QString string (“This is sample”); //or we can also assign QVariant string(“This is sample”)
setting.setValue(“Engine/MessageTitle”, string);
//Getting an int value;
int settingval = setting.value("Engine/TimeOutPeriod ").toInt();
//Getting a string value
QString title = setting.value("Engine/MessageTitle ").toString();
}
分享到:
相关推荐
安装之前需要下载以下内容: ActivePerl 5.10.1 这... S60 5th SDK, 之所以选择第五版,是因为这是支持触摸操作的版本,现在触摸很流行嘛,另外就是我只在5800上成功地安装了QT程序,貌似S60 5.0以后的版本更可靠些。 ...
在进入Qt Symbian开发环境的安装教程之前,先了解一下Qt和Symbian。Qt是一个跨平台的应用程序和用户界面开发框架,它允许开发者使用C++语言创建桌面、移动和嵌入式系统的应用程序。Symbian则是一个曾经流行的智能...
Qt_4.7.3_S60_5th_Qtptzcx_Signed.sis这个文件包含了QT开发库和相关的运行时环境,开发者可以使用它来构建和运行QT应用程序。这个签名的 sis 文件意味着它已经过安全验证,可以在塞班设备上安全安装。 其次,QT ...
这个环境主要包括三个关键部分:基本工具、Symbian SDK和Qt for Symbian SDK。以下将详细阐述每个部分的安装步骤及注意事项。 一、基本工具 基本工具包括JRE(Java Runtime Environment)和ActivePerl,它们是开发...
2.3.5Qt/S60 2.3.6基于Linux发行版的安装 2.4配置Qt4环境 2.4.1Windows平台 2.4.2X11平台 2.5问题与解答 2.6总结与提高 第3章Qt编程基础 3.1标准C++精讲 3.1.1程序设计语言介绍 3.1.2C++语法基础知识 3.1.3C++高级...
理解Symbian的权限管理、内存管理和线程模型也是必不可少的。同时,由于Symbian系统的特性,可能需要对代码进行特殊优化以适应其资源有限的环境。 总之,要在Symbian S60手机上运行Qt程序,必须正确安装并配置Open ...
S60平台支持多种编程语言,如C++、Java MIDP和Qt。 二、开发环境准备 在开始Symbian S60的开发之前,你需要安装以下基本组件: 1. SDK(Software Development Kit):诺基亚提供了Symbian S60的SDK,包含了开发...
Qt for Symbian是Nokia推出的一个用于开发Symbian平台应用程序的框架,它结合了Qt的跨平台特性和Symbian的操作系统优势,为开发者提供了丰富的API和工具集,以便在S60设备上创建功能强大的用户界面和应用程序。...
本篇文章将详细解析“S60开发安装配置手册”中的关键知识点,帮助你构建完整的S60应用程序开发环境。 首先,我们需要理解S60平台。S60(Series 60)是基于Symbian OS的操作系统版本,主要应用于诺基亚等品牌的智能...
### Qt集成WebKit:渲染、使用和扩展网络技术 #### 一、奠定基础 在现代软件开发领域,跨平台的应用程序框架和技术变得越来越重要。Qt 和 WebKit 的集成就是这一趋势中的一个重要里程碑。Qt 是一个非常成熟且强大...
- 用户还可以通过Qt Designer界面的工具栏进行文件的管理和界面的布局调整,例如选择是否采用“简化树形视图”以及是否“隐藏生成的文件”。 通过以上内容,我们可以了解到Qt5的基本概念、安装过程、开发环境的...
- **Qt简介**:涵盖Qt模块介绍、构建工具和开发环境的使用(如Qt Creator、Assistant、Designer、Linguist 和 qMake)。 - **Qt核心组件**:包括基本类型、内存管理、容器类、QObject 和 QCoreApplication 的使用。 ...
- **应用**: Qt被广泛应用于各种操作系统和平台上,包括但不限于MS Windows、UNIX/X11、Mac OS X、嵌入式系统(如Linux、Windows CE)以及移动设备平台(如Symbian/S60)。 **1.2 Qt5的安装** - **下载**: 从Qt...
在S60第五版的环境中,开发者通常会使用 Carbide.c++ IDE 或者 Qt Creator 进行开发,它们提供了一整套工具,包括代码编辑、调试和项目管理。Symbian C++ 是主要的编程语言,但也可以使用Qt库来开发跨平台的应用。在...
同时,游戏可能还需要利用到系统事件处理、时间管理和内存管理等API。 3. **游戏编程基础** RoidsS60游戏可能涉及到了游戏循环、碰撞检测、对象更新和渲染等基本概念。游戏循环是游戏的核心,用于不断更新游戏状态...
本指南主要面向打算开发基于S60平台的应用程序的软件开发者和技术支持人员。 ##### 3.3 排版约定 - **斜体**:表示强调文本。 - **粗体**:表示命令、选项或路径等具体操作指示。 - **`代码样例`**:用于突出显示...
- **QObject**:是Qt对象模型的核心,为所有对象类提供基类,负责管理对象树和所有权。 - **内存管理**:处理对象的创建和销毁。 - **自省**:提供了对象的元数据,方便进行动态类型检查和处理。 - **事件处理**...
- **学习目标**: 理解Qt的基本概念,学会如何安装和设置Qt开发环境,创建基础的Qt程序,掌握基本的GUI开发技能。 - **课程内容**: 通过介绍和安装Qt、了解Qt基础、Qt模块、编译工具链、创建Qt程序、Qt基础组件、事件...