Qt入門系列開發教程【基礎控件篇】QLabel文本標簽

      網友投稿 1253 2022-05-29

      描述

      QLabel 用于顯示文本或圖像。 不提供用戶交互功能。 標簽的視覺外觀可以通過多種方式進行配置,并且可以用于為另一個小部件指定焦點助記鍵。

      QLabel 可以包含以下任何內容類型

      Plain textPass:一個用setText()設置的字符串

      Rich textPass:一個包含富文本的setText().

      A pixmapPass: 一個 QPixmap 使用setPixmap()設置.

      A moviePass : QMovie 使用 setMovie(),可以播放gif

      A numberPass setNum() 的 int 或 double,它將數字轉換為純文本。

      Nothing:與空的純文本相同。 這是默認設置。 由 clear() 設置。

      警告:當將 QString 傳遞給構造函數或調用 setText() 時,請確保清理您的輸入,因為 QLabel 會嘗試猜測它是將文本顯示為純文本還是富文本(HTML 4 標記的子集)。 您可能想顯式調用 setTextFormat(),例如 如果您希望文本為純格式但無法控制文本源(例如,當顯示從 Web 加載的數據時)。

      當使用這些功能中的任何一個更改內容時,任何以前的內容都會被清除。

      默認情況下,標簽顯示左對齊、垂直居中的文本和圖像,其中要顯示的文本中的任何選項卡都會自動展開。 但是,可以通過多種方式調整和微調 QLabel 的外觀。

      可以使用 setAlignment() 和 setIndent() 調整 QLabel 小部件區域內內容的定位。 文本內容也可以使用 setWordWrap() 沿著單詞邊界換行。 例如,這段代碼設置了一個下沉式面板,右下角有兩行文本(兩行都與標簽的右側齊平):

      QLabel *label = new QLabel(this); label->setFrameStyle(QFrame::Panel | QFrame::Sunken); label->setText("first line\nsecond line"); label->setAlignment(Qt::AlignBottom | Qt::AlignRight);

      QLabel 從 QFrame 繼承的屬性和函數也可用于指定要用于任何給定標簽的小部件框架。

      QLabel 通常用作交互式小部件的標簽。 為此,QLabel 提供了一種有用的機制來添加助記符(參見 QKeySequence),該助記符會將鍵盤焦點設置到另一個小部件(稱為 QLabel 的“伙伴”)。 例如:

      Qt入門系列開發教程【基礎控件篇】QLabel文本標簽

      QLineEdit *phoneEdit = new QLineEdit(this); QLabel *phoneLabel = new QLabel("&Phone:", this); phoneLabel->setBuddy(phoneEdit);

      API

      //對齊方式 Qt::Alignment alignment() const //獲取伙伴QWidget QWidget *buddy() const //此屬性保存標簽是否將縮放其內容以填充所有可用空間。 bool hasScaledContents() const //是否有被選中的文字 bool hasSelectedText() const //此屬性以像素為單位保存標簽的文本縮進 int indent() const int margin() const //GIF對象 QMovie *movie() const //打開外鏈 bool openExternalLinks() const //獲取圖片 QPicture picture() const QPixmap pixmap() const QTextDocument::ResourceProvider resourceProvider() const //選中的文字 QString selectedText() const //返回對一個選中的索引 int selectionStart() const //設置對齊方式 void setAlignment(Qt::Alignment) //設置小伙伴 void setBuddy(QWidget *buddy) //此屬性以像素為單位保存標簽的文本縮進 void setIndent(int) //此屬性保存邊距的寬度 void setMargin(int) //是否開啟a標簽 void setOpenExternalLinks(bool open) //設置此標簽的富文本資源的提供者。 void setResourceProvider(const QTextDocument::ResourceProvider &provider) //此屬性保存標簽是否將縮放其內容以填充所有可用空間。 void setScaledContents(bool) //獲取指定標簽在顯示文本時應如何與用戶輸入交互。 void setSelection(int start, int length) //設置格式 void setTextFormat(Qt::TextFormat) void setTextInteractionFlags(Qt::TextInteractionFlags flags) //是否開啟自動換行 void setWordWrap(bool on) //顯示的文字 QString text() const //文本格式 文本、富文本、markdown Qt::TextFormat textFormat() const //指定標簽在顯示文本時應如何與用戶輸入交互。 //如果標志包含 Qt::LinksAccessibleByKeyboard,則焦點策略也會自動設置為 //Qt::StrongFocus。 //如果設置了 Qt::TextSelectableByKeyboard,則焦點策略設置Qt::ClickFocus。 //默認值為 Qt::LinksAccessibleByMouse。 Qt::TextInteractionFlags textInteractionFlags() const //此屬性包含標簽的自動換行策略 bool wordWrap() const

      Qt

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:雙目視覺 標定+矯正 (基于MATLAB)
      下一篇:Linux系統常用命令,指令詳解及案例
      相關文章
      国产亚洲中文日本不卡二区| 亚洲爆乳无码专区| 亚洲国产精品视频| 久久久久亚洲AV无码网站| 亚洲国产成人久久综合区| 亚洲精品人成网在线播放影院 | 久久久无码精品亚洲日韩蜜桃 | 亚洲av无码片vr一区二区三区| 亚洲精品中文字幕麻豆| 久久亚洲国产午夜精品理论片| 日韩亚洲翔田千里在线| 亚洲一区二区三区高清视频| 久久亚洲精品无码| 亚洲2022国产成人精品无码区| 亚洲AV区无码字幕中文色| 久久精品国产亚洲AV无码麻豆| 一区二区三区亚洲| 亚洲精品午夜在线观看| 亚洲国产精品综合久久久| 少妇中文字幕乱码亚洲影视| 亚洲网站在线播放| 亚洲免费一级视频| 在线aⅴ亚洲中文字幕| 亚洲免费闲人蜜桃| 亚洲乱码在线卡一卡二卡新区| 久久国产亚洲精品| 亚洲av成人一区二区三区在线播放| 亚洲av永久无码精品网址| 国产尤物在线视精品在亚洲| 亚洲日韩国产精品乱| 亚洲AV无码专区在线电影成人| 亚洲AV无码男人的天堂| 亚洲人成无码www久久久| 激情综合色五月丁香六月亚洲| 亚洲国产精品无码久久九九| 在线精品亚洲一区二区小说| 亚洲成A∨人片在线观看不卡 | 亚洲精品成人久久| 国产亚洲精品影视在线| 亚洲福利中文字幕在线网址| 亚洲色爱图小说专区|