freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

嵌入式中文拼音輸入法的設(shè)計(jì)(參考版)

2024-12-08 09:28本頁(yè)面
  

【正文】 。 //清除原先顯示的漢字。 } while(()) { list(0).toString()。 // } if(!()) { QMessageBox::warning(0, 錯(cuò)誤 , 字 庫(kù) 查 詢 失敗 !\n+().text())。 py == ) // { //第二次聯(lián)想查詢 // (SELECT hz FROM zh_CN_egb2312 WHERE hz like ? ORDER BY pri DESC)。 // if(hz != amp。 (SELECT hz FROM zh_CN_egb2312 WHERE pinyin = ? ORDER BY pri DESC)。 // (SELECT hz FROM zh_CN_egb2312 WHERE pinyin like ? AND length(hz)=1 ORDER BY pri DESC)。 (true)。 //()。 //打開字體數(shù)據(jù)庫(kù) int selectFromZh_CN_db(QString str)。 } 至此,軟鍵盤的功能設(shè)計(jì)完成。 WSServer::sendKeyEvent(0,(butt onValue),Qt::ShiftModifier,true,false)。此處用到 Qt/E 服 務(wù)器端 一個(gè) 重要 的發(fā) 送事件 函數(shù) :QWSServer::sendKeyEvent ( int unicode, intkeycode, Qt::KeyboardModifiers modifiers, boolisPress, bool autoRepeat );該函數(shù)會(huì)檢查當(dāng)前是否安裝了輸入法,如果是,就會(huì)去調(diào)用這個(gè)輸入法的 filter 函數(shù)來(lái)過(guò)濾鍵盤事件,如果這個(gè)函數(shù)返回值為 true,就不在繼續(xù)分發(fā)該事件,否則按默認(rèn)方式繼續(xù)分發(fā)該事件。其它類似。例如: (0,Qt::Key_0)。signalMapper,SIGNAL(mapped(QString)), this, SLOT(buttonClicked(QString)))。 (uibutton_1,uibutton_1 property(buttonValue))。 24 connect(uibutton_1,SIGNAL(clicked()),amp。 軟 鍵盤內(nèi)部實(shí)現(xiàn) 為降低代碼冗余,用 QSignalMapper 類對(duì)按鍵信號(hào)進(jìn)行轉(zhuǎn)換,將不同按鍵發(fā)送者的無(wú)參數(shù)信號(hào),轉(zhuǎn)換為帶有參數(shù)的信號(hào),最后在將轉(zhuǎn)換后的信號(hào)連到同一個(gè)槽上,這樣就不用為每個(gè)按鍵都寫一個(gè)按鍵處理槽。 添加漢字 可以使用 SQLite Database Browser 圖形界面添加,如圖 所示: 圖 漢字添加 10 中文輸入法實(shí)現(xiàn) 前面已經(jīng)實(shí)現(xiàn)一個(gè)軟鍵盤的布局了,這一步就是實(shí)現(xiàn)軟鍵盤的核心技術(shù):查找漢字與及英文、漢字的顯示了。 23 創(chuàng)建 pinyin 字段上的索引: CREATE INDEX index_zh_CN_egb2312_pinyin ON zh_CN_egb2312(pinyin ASC)。 (2)字庫(kù)創(chuàng)建 : CREATE TABLE zh_CN_gb2312 (id INTEGR PRIMARY KEY, pinyin TEXT, hz TEXT, pri INTEGER)。 “關(guān)閉”按鍵可以退出拼音輸入法。按下“ shift”鍵后,將切換到大寫字母輸入。 拼音框 QPushButton *panelButton_down。 網(wǎng)格布局 QPushButton *panelButton_up。 !鍵 QPushButton *panelButton_hide。 中文切換鍵 QPushButton *panelButton_hand。 空格鍵 QPushButton *panelButton_abc。 ,鍵 QPushButton *panelButton_shift。 /鍵 21 QPushButton *panelButton_maohao。 m 鍵 QPushButton *panelButton_fanxiegang。 b 鍵 QPushButton *panelButton_n。 c 鍵 QPushButton *panelButton_v。 z 鍵 QPushButton *panelButton_x。 l鍵 QPushButton *panelButton_enter。 j鍵 QPushButton *panelButton_k。 g 鍵 QPushButton *panelButton_h。 d 鍵 QPushButton *panelButton_f。 a 鍵 QPushButton *panelButton_s。 p 鍵 QPushButton *panelButton_at。 i鍵 QPushButton *panelButton_o。 y鍵 QPushButton *panelButton_u。 r鍵 QPushButton *panelButton_t。 w 鍵 QPushButton *panelButton_e。 刪除 鍵 QPushButton *panelButton_q。 數(shù)字鍵 9 QPushButton *panelButton_0。 數(shù)字鍵 7 QPushButton *panelButton_8。 數(shù)字鍵 5 QPushButton *panelButton_6。 數(shù)字鍵 3 QPushButton *panelButton_4。 數(shù)字鍵 1 QPushButton *panelButton_2。 QWidget 中具體需要添加如下部件: QGridLayout *gridLayout。 為每個(gè)按鍵增加一個(gè) “ Dynamic Properties” 屬性: ButtonValue, 用作按鍵標(biāo)識(shí)。 key_boardsetMinimumSize(QSize(419, 142))。 Qt/E4 輸入法的客戶 /服務(wù)器模型如圖 . 19 圖 Qt/E 輸入法客戶 /服務(wù)器模型 8 中文輸入法的界面設(shè)計(jì) 軟鍵盤窗口的設(shè)計(jì) 在這個(gè)軟件盤中,需要實(shí)現(xiàn)小寫英文字母輸入、大寫字母輸入、中文輸 入、其他各種字符的輸入、隱藏以及其他一般功能的按鍵。即當(dāng)服務(wù)器端安裝了一個(gè)輸入法時(shí),在每次鍵盤產(chǎn)生事件的時(shí)候,就會(huì)把按鍵事件先送給輸入 法,判斷是否處理這個(gè)按鍵,如果輸入法處理,就不分發(fā)這個(gè)按鍵事件,否則就會(huì)按照上面所述分發(fā)機(jī)制繼續(xù)分發(fā)這個(gè)事件到客戶端應(yīng)用程序。系統(tǒng)中產(chǎn)生的所有事件,都會(huì)先傳到服務(wù) 端,然后再由服務(wù)端根據(jù)情況分發(fā)給相對(duì)應(yīng)的客戶端應(yīng)用程序,其處理機(jī)制為:當(dāng)服務(wù)端接收到一個(gè) Event 時(shí),它就查找所有頂層窗口列表,找出發(fā)出事件的窗口,然后根據(jù)這個(gè)窗口找到創(chuàng)建它的客戶端應(yīng)用程序并返回其 ID 到服務(wù)器端,服務(wù)器端會(huì)用 QWSEvent 類對(duì)象封裝這個(gè) Event,在將其轉(zhuǎn)發(fā)到窗口所在的客戶端應(yīng)用程序 。 Qt 是原 Trolltech 公司開發(fā)的一個(gè)跨平臺(tái)的 C++圖形用戶界面應(yīng)用框架。這時(shí)拼音輸入框 QLineEdit 會(huì)根據(jù)用戶輸入的拼音到 sqlite 數(shù)據(jù)庫(kù) 中進(jìn)行漢字的查找,并將查找到的漢字顯示到漢字顯示框中。具體流程如下圖所示: 圖 輸入法事件流程 18 拼音輸入法原理詳述 輸入法窗口由中英文切 換鍵、拼音輸入框、漢字顯示框和軟鍵盤組成,軟鍵盤的按鍵類 QPushButton繼承自 Qt的 QToolButton類, 當(dāng)光標(biāo)切換到 QLineEdit時(shí)將觸發(fā)槽函數(shù)彈出輸入法界面,當(dāng)字母 Button 被按下時(shí)發(fā)送信號(hào) clicked(),由信號(hào) clicked()觸發(fā) accept()槽來(lái)實(shí)現(xiàn)拼音輸入框顯示。 export TSLIB_ROOT=/usr/local/tslib export TSLIB_TSDEVICE=/dev/input/event0 export TSLIB_FBDEVICE=/dev/fb0 export TSLIB_PLUGINDIR=/usr/local/tslib/lib/ts export TSLIB_CONSOLEDEVICE=none export TSLIB_CONFFILE=/usr/local/tslib/etc/ export TSLIB_CALIBFILE=/etc/pointercal export QTDIR=/usr/local/qte export QT_PLUGIN_PATH=$QTDIR/lib/plugins export QWS_MOUSE_PROTO=Tslib:/dev/input/event0 export QWS_SIZE=800X600 至此 Qt/E 主機(jī)端開發(fā)環(huán)境和目標(biāo)板運(yùn)行環(huán)境配置完畢。編輯目標(biāo)板根文件系統(tǒng)中的 /etc/profile 文件,將 Qt/E 庫(kù)文件的路徑加入 LD_LIBRARY_PATH 變量中。圖 為編譯 ARM 平臺(tái)的運(yùn)行圖。 QtCreator 配置完成。 3.單擊 Debugging Helper 右側(cè) Rebuild 按鈕,等待片刻,看到 Debugging Helper:后出現(xiàn)一個(gè)綠色的“√”即可。 圖 , QtCreator 配置 添加過(guò)程為 : 1.在 Qt Versions 界面中點(diǎn)擊那 個(gè)藍(lán)色的“╋”號(hào)圖標(biāo),在下方“ Version Name” 文本框內(nèi)輸入一個(gè) Qt 的版本名,如 等。 嵌入式中文拼音輸入法的設(shè)計(jì) 15 配置 QtCreator 環(huán)境 QT/E 庫(kù)編譯好以后,還要將相關(guān)平臺(tái)庫(kù)加入到 QtCreator 工程管理中,使得 QtCreator可以管理并且編譯不同平臺(tái)的應(yīng)用程序。配置選項(xiàng)如下: ./configure prefix /home/ release shared fast nolargefile stl qtsqlsqlite noqt3support noxmlpatterns nomultimedia noaudiobackend nophonon nophononbackend nosvg nowebkit nojavascriptjit noscript noscripttools nommx no3dnow nosse nosse2 qtzlib qtgif qtlibtiff qtlibpng nolibmng qtlibjpeg noopenssl make libs nomake tools nomake examples nomake docs nomake demos nis iconv nopch xplatform qws/linuxarmg++ nofeatureSOUND nofeatureSTYLE_MOTIF nofeatureS TYLE_CDEnofeatureSTYLE_PLASTIQUEnofeatureSTYLE_WINDOWSVISTAnofeatureSTYLE_WINDOWSXPnofeatureSTYLE_WINDOWSCEnofeatureSTYLE_WINDOWSMOBILE nofeatureMOVIE nofeaturePAINT_DEBUG nofeatureBIG_CODECSnofeatureUNDOCOMMANDnofeatureUNDOSTACKnofeatureUNDOGROUPnofeatureUNDOVIEWnofeatureQWS_SOUNDSERVERnofeatureQWSCURSOR embedded arm littleendian qtfreetype depths 16,24,32 noopengl
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1