• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            zhonghua

            C++博客 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
              72 Posts :: 1 Stories :: 4 Comments :: 0 Trackbacks
            方法一:思路很好。值得學(xué)習(xí)
            前兩天有人問(wèn)我關(guān)于如題所示的問(wèn)題,具體就是說(shuō):現(xiàn)在他想做一個(gè)按鈕,當(dāng)click它時(shí):只刪除編輯框中的一個(gè)文字,而當(dāng)常按press時(shí):則連續(xù)的刪除文字,此后一旦release,則立即停止刪除問(wèn)題。

                  關(guān)于如何刪除一個(gè)文字,這個(gè)很好實(shí)現(xiàn),這里把重點(diǎn)放在:如何區(qū)分這兩種狀態(tài)上。

                  我在實(shí)現(xiàn)時(shí):只用了一個(gè)定時(shí)器。總體為:當(dāng)?shù)谝淮蝡ress時(shí)間達(dá)到0.5s時(shí)開(kāi)始連續(xù)刪除,如果按壓的時(shí)間不足0.5s即release,則只刪除一個(gè)文字;  而連續(xù)刪除文字時(shí):是每隔0.1s刪除一個(gè),一旦中途release了,則立即停止刪除文字。

                  代碼如下,可以直接拿來(lái)用,當(dāng)然,你需要自己手動(dòng)實(shí)現(xiàn)刪除編輯框中一個(gè)文字的函數(shù)DeleteOneCharacterInEditor()。

             

             timer1 = = new QTimer(this);

             

            QObject::connect(timer1, SIGNAL(timeout ()),

            this, SLOT(DeleteOneCharacter()));

            QObject::connect(iDeleteButton, SIGNAL(pressed()),this , SLOT(PressDelete()));

            QObject::connect(iDeleteButton, SIGNAL(released ()),this, SLOT(ReleaseDelete()));

             

             //-----------------------------------------------------------------------------------------

            void  test::PressDelete()  

            {

                  press = 1;

                  timer1->setSingleShot(

            true);

                  timer1->start(500); 

            }

             

            void 

            test::DeleteOneCharacter()

            {

                 if(mEditor)

                 {

                      DeleteOneCharacterInEditor();

                 }

                 press = 0; 

                 timer1->start(100); 

            }

             

            void   test::ReleaseDelete()

                timer1->stop(); 

                if(press == 1)

                {

                    if(mEditor)  

                    {

                        DeleteOneCharacterInEditor();

                    }

            }

            方法2:
            設(shè)置QPushButton的autoRepeat的屬性,只要設(shè)為true就可以連續(xù)刪除了,而且刪除的時(shí)間間隔也可以設(shè)定。
            posted on 2012-03-29 15:18 米米 閱讀(1296) 評(píng)論(0)  編輯 收藏 引用 所屬分類: qt
            欧美精品一区二区精品久久| 久久久久久国产a免费观看黄色大片 | 综合久久一区二区三区 | 精品国际久久久久999波多野| 国产成人久久激情91| 人人狠狠综合久久亚洲高清| 久久天堂AV综合合色蜜桃网| 久久精品国产亚洲5555| 国内精品久久久久影院一蜜桃| 日本高清无卡码一区二区久久| 久久亚洲精精品中文字幕| 久久久久久久久久免免费精品 | 亚洲精品成人网久久久久久| 久久精品国产一区二区三区日韩| 久久久国产亚洲精品| 久久伊人色| 91精品国产高清久久久久久91| 亚洲国产视频久久| 久久黄色视频| 精品久久久久久无码国产| 99re久久精品国产首页2020| 亚洲中文字幕久久精品无码APP | 国产一级做a爰片久久毛片| 国产精品99久久久精品无码| 国产精品久久久天天影视香蕉| 国内精品伊人久久久久av一坑| 久久精品国产久精国产果冻传媒| 久久99精品久久久久久齐齐| 日本三级久久网| 色综合合久久天天综合绕视看| 精品国产一区二区三区久久| 99久久免费国产精品热| 久久99国产精品99久久| 四虎国产精品免费久久5151| 久久久久夜夜夜精品国产| 99久久国产综合精品网成人影院| 亚洲狠狠综合久久| 久久国产精品一区| 亚洲欧美日韩精品久久亚洲区| 99久久精品国产一区二区 | 久久久久久国产精品免费无码|