`
llb0536
  • 浏览: 4810 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Qt-Symbian 一些常用代码

阅读更多

最近快被Qt For Symbian整疯了。总结了一些经验,分享一下。

虽然Symbian注定要在人们视野中淡去,但是她毕竟辉煌过;同时在他离去的时候,留下了Qt——一种移动平台开发的思路,写一个程序缅怀她的成功。


界面切换:
是通过Stack实现的。
建立一个QBaseWidget,然后其他界面通过继承该类,进行active和remove.至于激活以前的view就是一个栈操作。

int QBaseWidget::activatePerviousView()


    {


    int ret = -1;


    QString currentName = stackedWidget->currentWidget()->metaObject()->className();


    QString previous;


    


    for (int i=0;i<stackedWidget->count();i++)


        {


        QWidget* w = stackedWidget->widget(i);


        if (w->metaObject()->className()==currentName)


            {


            if (i>0)


                {


                i--;


                previous = stackedWidget->widget(i)->metaObject()->className();


                ret = 0;


                // Remove current widget


                removeWidget(currentName);


                // Activate prevous widget


                activateWidget(previous);


                }


            break;


            }


        }


    return ret;


    }
 

 

Nokia官网提供了一个例子:Qt_for_S60_QStackedWidget_Example_v1_0_en

 

2、为QWebView提供键盘指引(三版S60)

    QWebPage *page = m_view->page();
    QWebSettings *settings = page->settings();
    settings->setAttribute(QWebSettings::SpatialNavigationEnabled, true);

 不过SpatialNavigationEnabled是Qt4.7里才加入的,要用4.7的lib。

 

3、读取接入点:

 

#include

 

<QNetworkSession>


#include

 

<qmobilityglobal.h>



QTM_USE_NAMESPACE //使用了qmobility的API




QNetworkSession

 

*

session

;

 
  
QNetworkConfigurationManager manager;

    const bool selectIap = (manager.capabilities()& QNetworkConfigurationManager::CanStartAndStopInterfaces);

    QNetworkConfiguration defaultIap = manager.defaultConfiguration();
    if(!defaultIap.isValid() && (!selectIap && defaultIap.state() != QNetworkConfiguration::Active))
        {
            qDebug()<<"ERROR";      // let the user know that there is no access point available
        }

    session = new QNetworkSession(defaultIap,this);
    session->open();

 

 QNetworkConfigurationManager::allConfigurations()  //可以获得所有的接入点

 4、让某个按钮获得焦点

 

QTimer::singleShot(0, button, SLOT(setFocus()));

 

 

先写这些,慢慢补充

 

0
0
分享到:
评论

相关推荐

    QT学习教程

    - **应用**: Qt被广泛应用于各种操作系统和平台上,包括但不限于MS Windows、UNIX/X11、Mac OS X、嵌入式系统(如Linux、Windows CE)以及移动设备平台(如Symbian/S60)。 **1.2 Qt5的安装** - **下载**: 从Qt...

    Symbian经典入门代码

    Symbian提供了多种用户界面框架,如Series 60的C++ UIQ和Qt for Symbian。这些框架定义了控件、事件处理和布局管理。通过分析提供的源代码,你可以学习如何创建窗口、按钮、列表视图等元素。 5. **文件系统和资源...

    symbian开发代码

    开发Symbian应用,首先需要安装 Carbide.c++ IDE 或者 Qt Creator,它们是Symbian开发的主要工具。同时,还需要配置SDK,如S60 SDK,以及设备模拟器或实际设备进行调试。开发者还需要熟悉Makefile和项目构建过程,以...

    symbian camera

    4. **源代码结构与编程语言**:由于是源码,我们可能涉及到C++或Qt等编程语言,这是塞班开发的常用语言。解析源码的结构,了解类、函数、事件处理等将有助于理解整个相机应用的工作原理。 5. **示例项目的使用**:...

    载入位图symbian

    通常,这些格式需要通过第三方库(如Qt或OpenCV)转换为Symbian支持的格式。 - 资源管理:加载位图后,确保正确释放资源,避免内存泄漏。使用`CFbsBitmap::~CFbsBitmap()`析构函数或`Delete()`方法。 2. **应用...

    symbian html ctontrol

    1. **源代码**:可能包括C++或Qt(在S60 5th Edition中常用)的源代码文件,用于实现HTML控件。 2. **库文件**:编译好的库,如动态链接库(.dll)或静态链接库(.lib),供应用程序链接使用。 3. **头文件**:包含...

    symbian 界面

    "UI"可能是一个项目文件,其中可能包含了Symbian UI的具体实现,例如用C++编写的源代码、资源文件或工程配置。 总之,Symbian UI设计和开发涉及许多技术细节,包括UI组件的使用、事件处理、资源管理等。通过学习和...

    Symbian开发教程课件

    Symbian的用户界面通常基于Qt或Series60 SDK提供的组件构建。理解如何创建和布局控件,以及响应用户交互,对于创建用户体验优秀的应用至关重要。 ### 8. 性能优化 由于Symbian设备的资源限制,性能优化是开发过程...

    C++高级软件工程师

    - **Curses库与Qt**:学习使用Curses库进行文本界面的开发,掌握Qt库的基础用法。 - **网络编程**:理解TCP/IP协议栈,学习套接字编程,实现简单的网络通信。 - **进程间通信**:掌握管道、信号、共享内存等IPC...

    PortingfromLinux.rar

    8. **用户界面**:Linux下的图形用户界面(GUI)框架如GTK+、Qt可能不适用于Symbian,需要考虑使用Symbian的UI框架如UIQ或Series 60 SDK。 9. **编译和构建系统**:Linux下常用的Makefile和GCC工具链在Symbian上...

    Camera.rar

    Eclipse和 Carbide.c++是常用的开发环境,它们提供了一整套集成开发环境(IDE),便于编写、编译和调试代码。 3. **Symbian摄像头API** 在Symbian系统中,相机功能主要通过QCamera或QImageProvider等类来实现。...

    S60程序设计(C++)_pdf

    - **IDE(集成开发环境)**:常用的IDE有 Carbide.c++ 和 Qt Creator,它们提供了项目管理、代码编辑、调试等功能,极大地提高了开发效率。 - **文档与教程**:官方提供了详尽的技术文档和教程,涵盖了S60平台的所有...

    基于嵌入式系统的手机设计与实现.docx

    - **Qtopia平台**:Qtopia是一个基于Qt/Embedded的可定制开发环境和用户界面框架,能够提供全面的源代码访问权限,允许开发者根据需求进行深度定制。此外,Qtopia支持多存储模型,增强了应用程序的灵活性。 #### ...

    基本UIQ入门手册

    C++是UIQ开发中常用的系统级编程语言,具有高效、灵活和可移植性等特点,使得开发者能够深入到操作系统层面进行编程,创建功能丰富的移动应用。手机编程则涉及到移动设备特有的硬件限制、用户交互设计以及功耗管理等...

    嵌入式Linux 操作系统基础教程

    市场上有许多嵌入式操作系统,如Symbian、uCLinux、uC/OS、WinCE、VxWorks等,而本书选择Linux作为讲述对象,因为Linux开源、市场占有率高、应用广泛。 学习嵌入式Linux操作系统需要掌握以下知识点: 1. Linux使用...

Global site tag (gtag.js) - Google Analytics