中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

動(dòng)態(tài)網(wǎng)站開發(fā)常用技術(shù)龍網(wǎng)網(wǎng)絡(luò)推廣軟件

動(dòng)態(tài)網(wǎng)站開發(fā)常用技術(shù),龍網(wǎng)網(wǎng)絡(luò)推廣軟件,網(wǎng)站定制公司地址,做視頻搬運(yùn)哪個(gè)網(wǎng)站最賺錢繼續(xù)講一些Qt開發(fā)中的技巧操作: 1.文字的分散對(duì)齊 有時(shí)候需要對(duì)文本進(jìn)行分散對(duì)齊顯示,相當(dāng)于無論文字多少,盡可能占滿整個(gè)空間平攤占位寬度,但是在對(duì)支持對(duì)齊方式的控件比如QLabel調(diào)用 setAlignment(Qt::AlignJustify | Qt::Align…

繼續(xù)講一些Qt開發(fā)中的技巧操作:
1.文字的分散對(duì)齊
有時(shí)候需要對(duì)文本進(jìn)行分散對(duì)齊顯示,相當(dāng)于無論文字多少,盡可能占滿整個(gè)空間平攤占位寬度,但是在對(duì)支持對(duì)齊方式的控件比如QLabel調(diào)用 setAlignment(Qt::AlignJustify | Qt::AlignVCenter)設(shè)置分散對(duì)齊會(huì)發(fā)現(xiàn)沒有任何效果,這個(gè)時(shí)候就要考慮另外的方式比如通過控制字體的間距來實(shí)現(xiàn)分散對(duì)齊效果。

QString text = "測試分散對(duì)齊內(nèi)容";
//計(jì)算當(dāng)前文本在當(dāng)前字體下占用的寬度
QFont font = ui->label->font();
int textWidth = ui->label->fontMetrics().width(text);
//顯示文本的區(qū)域?qū)挾?#61;標(biāo)簽的寬度-兩邊的邊距
int width = ui->label->width() - 12;
//需要-1相當(dāng)于中間有幾個(gè)間隔
int count = text.count() - 1;
//計(jì)算每個(gè)間距多少
qreal space = qreal(width - textWidth) / count;
//設(shè)置固定間距
font.setLetterSpacing(QFont::AbsoluteSpacing, space);
ui->label->setFont(font);
ui->label->setText(text);

2.設(shè)置動(dòng)態(tài)庫路徑
Qt提供的設(shè)置動(dòng)態(tài)庫路徑的方法setLibraryPaths是用來搜索插件動(dòng)態(tài)庫的,而不是程序直接依賴的動(dòng)態(tài)庫;很多人以為這個(gè)可以設(shè)置Qt的庫或者程序中依賴的第三方庫的路徑,其實(shí)想想也知道,因?yàn)槌绦蛞蕾囘@個(gè)庫,找不到的話根本跑不起來,程序跑不起來怎么應(yīng)用執(zhí)行這個(gè)代碼呢;Qt默認(rèn)是可用通過setLibraryPaths的方式設(shè)置Qt插件的動(dòng)態(tài)庫目錄位置,比如數(shù)據(jù)庫插件sqldrivers,軟鍵盤的插件庫等等,因?yàn)檫@些庫文件是真正在Qt程序跑起來以后通過插件形式去加載的;還可以通過qt.conf文件設(shè)置 Plugins=“config” 指定所有插件在可執(zhí)行文件下的config目錄下;要想設(shè)置程序直接依賴的動(dòng)態(tài)庫在其他目錄,找遍所有也只有一個(gè)辦法,那就是設(shè)置環(huán)境變量,除此別無他法。至于如何設(shè)置環(huán)境變量方式很多,比如手動(dòng)在電腦上設(shè)置,或者搞個(gè)批處理文件執(zhí)行命令行,在程序安裝的時(shí)候自動(dòng)執(zhí)行,或者程序打包目錄下用戶手動(dòng)運(yùn)行這個(gè)批處理。最終找插件的路徑其實(shí)就是這個(gè) QT_PLUGIN_PATH 環(huán)境變量;設(shè)置插件的目錄還可以通過在main函數(shù)最前面這樣寫來實(shí)現(xiàn)。


int main(int argc, char *argv[])
{//啟動(dòng)鍵盤,Qt默認(rèn)鍵盤qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));QApplication a(argc, argv);MainWindow w;w.show();return a.exec();
}

3.進(jìn)度條控件的文本
進(jìn)度條控件如果設(shè)置的垂直方向,就算你設(shè)置了文本可見,會(huì)發(fā)現(xiàn)根本看不到進(jìn)度文本,經(jīng)過多方百折不撓的試探,以及查看其他大佬的文章,發(fā)現(xiàn)只要設(shè)置下border樣式(border:1px solid #ff0000、border:none、border-style:solid、border-radius:0px 任意一種)就行,就可以把文本顯示出來;
4.文件對(duì)話框的卡頓
我們?cè)谑褂肣FileDialog::getOpenFileName、QFileDialog::getExistingDirectory等方法時(shí),有時(shí)候會(huì)發(fā)現(xiàn)首次打開很卡,尤其是在默認(rèn)目錄很多文件的時(shí)候,此時(shí)你可以考慮設(shè)置這些函數(shù)最末尾的參數(shù)為QFileDialog::DontUseNativeDialog,表示不采用本地系統(tǒng)對(duì)話框,這樣的話會(huì)采用Qt的對(duì)話框,速度快很多,估計(jì)系統(tǒng)的對(duì)話框在打開的時(shí)候會(huì)做很多初始化加載處理;

QFileDialog::getOpenFileName(this, "", "", "", 0, QFileDialog::DontUseNativeDialog);
QFileDialog::getExistingDirectory(this, "", "", QFileDialog::DontUseNativeDialog);

5.滑塊控件的進(jìn)度顏色
滑塊控件QSlider,如果設(shè)置的垂直樣式,其進(jìn)度顏色和剩余顏色,剛好和橫向樣式的顏色相反的,不確定這個(gè)是否是Qt的BUG,Qt各版本都存在這個(gè)現(xiàn)象

QSlider::groove:horizontal{
height:8px;
background:#FF0000;
}
QSlider::add-page:horizontal{
height:8px;
background:#FF0000;
}
QSlider::sub-page:horizontal{
height:8px;
background:#00FF00;
}
QSlider::handle:horizontal{
width:10px;
background:#0000FF;
}
QSlider::groove:vertical{
width:8px;
background:#FF0000;
}
QSlider::add-page:vertical{
width:8px;
background:#00FF00;
}
QSlider::sub-page:vertical{
width:8px;
background:#FF0000;
}
QSlider::handle:vertical{
height:10px;
background:#0000FF;
}

6.停靠窗體的排列
QMainWindow 在對(duì)??看绑w進(jìn)行排列的時(shí)候,有些不常用的設(shè)置容易遺忘,建議將QMainWindow 的頭文件函數(shù)過一遍一目了然;

//設(shè)置允許各種嵌套比如上下排列左右排列非常靈活
//此設(shè)置會(huì)和下面的 setDockOptions 中的參數(shù)覆蓋所以要注意順序
//this->setDockNestingEnabled(true);
//設(shè)置??繀?shù),不允許重疊,只允許拖動(dòng)和嵌套
this->setDockOptions(AnimatedDocks | AllowNestedDocks);
//將底部左側(cè)作為左側(cè)區(qū)域,底部右側(cè)作為右側(cè)區(qū)域,否則底部區(qū)域會(huì)填充拉伸
this->setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);
this->setCorner(Qt::BottomRightCorner, Qt::RightDockWidgetArea);

在這里插入圖片描述
7.拖拽事件的坑
很多人以為拖曳只要在dropEvent事件就可以了,其實(shí)不行的,沒有效果的,需要先在
dragEnterEvent事件中執(zhí)行event->accept()才行,不然根本沒有效果,很多人尤其是初學(xué)者都掛在這里,我在這里也掉過坑。

void frmMain::dropEvent(QDropEvent *event)
{QList<QUrl> urls = event->mimeData()->urls();
}
void frmMain::dragEnterEvent(QDragEnterEvent *event)
{if(event->mimeData()->hasFormat("application/xqabstractitemmodeldatalist")) {event->setDropAction(Qt::MoveAction);event->accept();} else {event->ignore();}
}
http://m.risenshineclean.com/news/59148.html

相關(guān)文章:

  • 在哪做網(wǎng)站便宜又好關(guān)鍵詞優(yōu)化步驟簡短
  • 廣州海珠發(fā)布seo排名軟件
  • 安裝wordpress報(bào)404錯(cuò)誤網(wǎng)站seo專員
  • 蘇州做門戶網(wǎng)站的公司免費(fèi)注冊(cè)推廣網(wǎng)站
  • 成都微信公眾號(hào)外包seo診斷工具有哪些
  • 自適應(yīng)網(wǎng)站平臺(tái)西安seo網(wǎng)絡(luò)推廣
  • 重慶建站管理系統(tǒng)信息seox
  • 海曙網(wǎng)站建設(shè)網(wǎng)站海南網(wǎng)站網(wǎng)絡(luò)推廣
  • 上海小企業(yè)網(wǎng)站建設(shè)資源企業(yè)網(wǎng)站排名優(yōu)化價(jià)格
  • 無錫高端網(wǎng)站設(shè)計(jì)制作白嫖永久服務(wù)器
  • 網(wǎng)站建設(shè)合同范本下載外貿(mào)網(wǎng)站谷歌seo
  • 衡水做wap網(wǎng)站推廣圖片制作
  • 在美國注冊(cè)一個(gè)網(wǎng)站 大陸做銷售品牌推廣活動(dòng)策劃案例
  • wordpress特色圖片dz論壇seo
  • wordpress無法更改主題北京網(wǎng)站優(yōu)化服務(wù)
  • 怎么做免流網(wǎng)站seo的優(yōu)點(diǎn)和缺點(diǎn)
  • rss 網(wǎng)站插件企業(yè)網(wǎng)站優(yōu)化
  • 本科學(xué)計(jì)算機(jī)是做網(wǎng)站嗎搜索引擎優(yōu)化服務(wù)
  • 做購物網(wǎng)站需要什么服務(wù)器拼多多代運(yùn)營收費(fèi)標(biāo)準(zhǔn)
  • 做個(gè)平臺(tái)網(wǎng)站怎么做自己有產(chǎn)品怎么網(wǎng)絡(luò)銷售
  • 做自己網(wǎng)站彩票網(wǎng)站設(shè)計(jì)公司排行
  • 珠海有什么網(wǎng)站網(wǎng)址導(dǎo)航哪個(gè)好
  • 網(wǎng)易企業(yè)郵箱忘記密碼seo零基礎(chǔ)視頻教程
  • 如何做免費(fèi)企業(yè)網(wǎng)站網(wǎng)站優(yōu)化策略分析
  • 中國最早做網(wǎng)站是誰關(guān)鍵詞工具軟件
  • 電子商務(wù)網(wǎng)站的運(yùn)營一般需要做哪些準(zhǔn)備企業(yè)官網(wǎng)建站
  • 辦公室裝修注意事項(xiàng)及細(xì)節(jié)整站優(yōu)化系統(tǒng)廠家
  • 幫人做網(wǎng)站犯法想做網(wǎng)絡(luò)推廣的公司
  • 租個(gè)網(wǎng)站服務(wù)器多少錢高端網(wǎng)站建設(shè)案例
  • 瀝林行業(yè)網(wǎng)站建設(shè)百度官方網(wǎng)平臺(tái)