Time of Update: 2018-12-03
再把這個Browser Control API也總結一下吧,只是做個引導,其實要掌握它的用法最好的方法是開啟 9.1/S60_3rd/S60Ex/BrCtlSampleApp
Time of Update: 2018-12-03
Symbian 調用Wap瀏覽器void CallWapBrower()const{ TInt KBrowerUid=0x10008D39; TApaTaskList stakList(iCoeEnv->WsSession()); TApaTask task=stakList.FindApp(TUid::Uid(KBrowerUid)); TUid id(TUid::Uid(KBrowerUid)); if(task.Exists()) { HBufC* param=HBufC:
Time of Update: 2018-12-03
我曾在前面介紹過一個可用於BREW環境下的XML
Time of Update: 2018-12-03
有時如果我們在應用中需要提供一個滾動的資訊提示條(類似於頁面上的跑馬燈marquee),其實也很容易做到,類似於我們前面做的菜單,下面我們也討論一下吧。跑馬燈包括的資料結構如下:struct _IGMarquee ...{ const AEEVTBL(IGMarquee) * pvt; uint32 m_nRefs; IShell *m_pIShell; IDisplay *m_pIDisplay;
Time of Update: 2018-12-03
在BREW的開發環境中,沒有一個聯機調試工具,一直是我覺得相當不方便的事情。在S60平台上做開發,至少這一點是能滿足我們的需要。第一種方法:Carbide C++ v1.2 的 Debug On DeviceCarbide C++1.2的pro.以上版本都支援裝置調試,實在是一件大快人心的事。要實現這個功能,也是相當的方便,當然前提是你用的是Carbide C++
Time of Update: 2018-12-03
今天學習一下如何修改GUI程式中的表徵圖與如何載入映像。與2nd.不同的是,3rd.支援svg格式的可縮放表徵圖(最大好處在於一個表徵圖搞定,以前用bmp時為了應用程式的菜單表徵圖得要做四個小表徵圖)。而且,現在有了一種新的映像打包格式mif(這名字咋跟BREW中那個MIF一樣啊)。雖然還支援以前的MBM方式但是不建議使用了。要在應用程式中增加映像表徵圖資源,過程如下:第一步,先將要加入的映像放在工程的/gfx目錄下,如:qgn_menu_DemoUI.svgsplash2.bmp前面一個就是應
Time of Update: 2018-12-03
前面做IGStatic時我們用到了一個捲軸組件IGScrollBar,現在說說它的實現方法,它的結構很簡單:struct _IGScrollBar ...{ const AEEVTBL(IGScrollBar) * pvt; uint32 m_nRefs; IShell *m_pIShell; IDisplay *m_pIDisplay; IModule *m_pIModul
Time of Update: 2018-12-03
最近看自己的部落格,發現那篇“關於架構的胡言亂語(上)”一直沒有下篇,心裡實在慚愧。從小我就有虎頭蛇尾的壞毛病,這麼大了,竟然還沒有改過來。 我再續個狗尾(不敢說續貂,充其也是狗尾續狗皮),也算是給自己有個交待。之所以把標題改成“關於架構的胡言亂語(下)”,是因為我個人覺得,架構市場的
Time of Update: 2018-12-03
Time of Update: 2018-12-03
mmp中添加:LIBRARY edbms.libDBbase.h// DBMS Interface to Databases/*DBbase.h*/#ifndef DBBASE_H#define DBBASE_H#include <d32dbms.h>#include <f32file.h>#include <s32file.h>#include <badesca.h>//class RDbStoreDatabase;//class RFs;//
Time of Update: 2018-12-03
這年頭流行“N天搞定派”,最好什麼能力都是一天裡面搞定,甚至不用一天搞定,呵呵。顯然呢,這是impossible的!但是俗話說的好啊,“即使再Impossible,也蘊含著Possible的機會”。所以呢,今天Lonely Fish就鬥膽教一下怎麼在一天裡面成為PPT達人。恩……這樣說似乎還不對,應該說怎麼用PPT裝13比較好。《說服力:讓你的PPT會說話》對讀者做過問卷,最終反饋有88.8%的讀者認為“PPT對職場晉陞有協助(很大)”。這說明什麼呢?這說明啊,大家充分已經認識到了PPT的作用。
Time of Update: 2018-12-03
雖然說這個話題真的是外婆級的話題,但卻是在我們的開發中經常遇到的問題。一般,我們會拋棄在RecordSet中分頁的做法,因為顯而易見的原因,這種方法的效率是非常低的。於是SQL分頁是一個唯一的選擇。 我一直是使用下面這種分頁語句: SELECT * FROM (SELECT TOP 頁大小 * FROM (SELECT TOP 起始記錄+頁大小 * FROM 表 ORDER BY 排序欄位 DESC) t1 ORDER BY 排序欄位) t2 ORDER BY 排序欄位 DESC
Time of Update: 2018-12-03
第一次開啟SymbianC++的程式原始碼,第一感覺就是“這是C/C++嗎?咋這麼眼生啊”。看代碼看書,才算是稍稍明白了一點,其實無非就是typedef罷了,symbian可比brew定義了更多的東西。這是以後幹活的基礎,所以做個筆記,省得忘了。一、基礎資料型別 (Elementary Data Type)這個比較簡單,都在e32def.h中寫著呢。也就是以下這幾個類型要注意一下,以後照著寫罷了,含義也很明了,不用多說。typedef void TAny;typedef
Time of Update: 2018-12-03
很久沒有學習Symbian了,今天研究一下如何使用Symbian中提供的WebService架構來SayHello。 從SDK文檔中提供的資料來看這個介面似乎有點複雜,包括了Connection API、Description API和Manager API三套東西,此外還涉到了XML的解析之類的一些API的應用。 閱讀了一下它的例子程式(S60Ex目錄下的AddressBook),讓我更暈乎了。怎麼跟自己平時使用的WebService不一樣了?
Time of Update: 2018-12-03
開發symbian的GUI應用是有模板的,用Carbide C++的工程嚮導可以自動產生程式的基本架構。不過可能與安裝的SDK版本有關,我現在只能產生一個AppUi一個Container的常規模板(以前用2nd
Time of Update: 2018-12-03
symbian支援多線程(它有一個RThread類)但卻又不提倡大家使用多線程,理由一般是說應用更安全?代碼更簡單?不過我覺得最令人信服的是省電。既然如此,那我們就不說“多線程”,說說“多任務”吧,使用中的物件(Active
Time of Update: 2018-12-03
教材裡說到使用中的物件時,總拿CTimer來做例子,從CActive派生一個CMyActive然後它包括一個CTimer
Time of Update: 2018-12-03
很簡單的東西,因為在學習中遇到了,所以記錄下來. 事情的起因是,我在做一個購物藍時,將一個自訂的類CartManager整個放進Session中,它的部分代碼如下,其實就是有一個Private 的ArrayList成員_cart用來放CartInfo類執行個體,而CartInfo類又包括一個成員ProductInfo _product和一個double _moneny...並不複雜.但是我都沒有弄任何Serializable的東西,於是...
Time of Update: 2018-12-03
仍是做一個同樣介面同樣功能的數獨遊戲,但是所花費的時間遠遠超出我用Android或者J2ME來做同樣的事情,當然運行效率也很明顯(我將J2ME實現的數獨放在N73上跑過,因為重繪螢幕的代碼沒有最佳化,所以效果不好,但同樣的演算法在BREW或者Symbian上就跑得相當順暢)。言歸正傳,關於數獨在Android上的實現,可參考這個:http://blog.csdn.net/sharetop/archive/2008/02/27/2124153.aspx這次我主要談談在做這個
Time of Update: 2018-12-03
再來討論一下那個TabPane效果的實現。根據我們作IGMenuCtl的經驗,應該並不難。同樣是定義一下幾個實體結構://自訂功能表項目typedef struct...{ IImage * pImage; // Image uint16 wItemID; uint32 dwData;} GTabItem;這個好簡單啊,就是一張大圖片罷了。 然後整個TabPane是這樣定義的:struct _IGTabPaneCtl ...{