Qt Quick ComboBox含图片时implicit width失效问题求助
问题:ComboBox下拉选项包含文本和图片时,implicitContentWidthPolicy无法正常工作
我正尝试创建一个下拉选项同时包含文本和图片的ComboBox,但implicitContentWidthPolicy无法正常工作,控件宽度仅适配第一个列表元素。
我已尝试使用ComboBox.ContentItemImplicitWidth和ComboBox.WidestTextWhenCompleted两种策略,均未解决问题,在两种情况下宽度都仅对第一个列表元素显示正常。
相关代码
import QtQuick 2.15 import QtQuick.Controls 2.15 Window { width: 640 height: 480 visible: true title: qsTr("Hello World") ComboBox{ id: testComboBox //implicitContentWidthPolicy: ComboBox.ContentItemImplicitWidth //implicitContentWidthPolicy: ComboBox.WidestTextWhenCompleted + 24 implicitContentWidthPolicy: ComboBox.WidestTextWhenCompleted model: ListModel { id: model ListElement {language: "English" ; flag: "english_flag.png"} ListElement {language: "German" ; flag: "german_flag.png"} ListElement {language: "Italian" ; flag: "italian_flag.png"} } delegate: ItemDelegate { Row { Image { source: model.flag width: 24 height: 16 } Text { text: model.language font.pixelSize: 16 anchors.verticalCenter: parent.verticalCenter } } } Row { Image { source: testComboBox.model.get(testComboBox.currentIndex).flag width: 24 height: 16 } Text { text: testComboBox.model.get(testComboBox.currentIndex).language font.pixelSize: 16 verticalAlignment: Text.AlignVCenter } } } }
示例图片



内容的提问来源于stack exchange,提问作者DvanHuyssteen
相关产品推荐
相关产品推荐

