我正在定制Combobox。下面是我的代码:
import QtQuick 2.7
import QtQuick.Controls.Styles 1.4
import QtQuick.Controls 2.2
import QtQuick.Window 2.2
ComboBox {
property int selectionButtonWidth: 35
property int selectionButtonHeight: 25
property int selectionButtonFontSize: 12
property string mainFontFamily: "Asap"
property color mainFontColor: "red"
property color inputHighlight: "#9C27B0"
property color comboboxBorderColor: "#C5C1CD"
property int comboboxBorderWidth: 1
id: playFromHour
width: selectionButtonWidth
height: selectionButtonHeight
model: 24
currentIndex: 1
font.family: mainFontFamily
font.pixelSize: selectionButtonFontSize
property bool needHighlight: false
onNeedHighlightChanged: {
if (needHighlight) {
playFromHourBack.border.color = inputHighlight
}
else {
playFromHourBack.border.color = comboboxBorderColor
}
}
background: Rectangle {
id: playFromHourBack
color: "transparent"
border.color: comboboxBorderColor
border.width: comboboxBorderWidth
}
contentItem: Text {
text: parent.displayText
font: parent.font
verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter
color: mainFontColor
}
indicator: Canvas {
}
delegate: ItemDelegate {
width: parent.width
height: selectionButtonHeight
contentItem: Text {
text: modelData
verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter
font: playFromHour.font
color: mainFontColor
}
highlighted: playFromHour.highlightedIndex === index
}
popup: Popup {
width: selectionButtonWidth
height: 6 * selectionButtonHeight
contentItem: ListView {
clip: true
model: playFromHour.popup.visible ? playFromHour.delegateModel : null
currentIndex: playFromHour.highlightedIndex
}
}
}
但我面对的是每个数字周围不可定制的大框架。见附件中的图片:
我需要将这个帧的大小减少到零,但我就是不知道怎么做。有什么想法吗?
我需要修复它,这样我才能减小组合框的宽度。因为现在宽度小于40像素,这些白色框架/边框占据了弹出窗口中的整个空间。
所以没有地方放文本。
发布于 2018-06-09 06:05:48
您必须确定由于使用了anchors.fill : parent
,所以ListView占用了与父级相同的空间。
contentItem: ListView {
clip: true
model: playFromHour.popup.visible ? playFromHour.delegateModel : null
currentIndex: playFromHour.highlightedIndex
anchors.fill: parent
}
https://stackoverflow.com/questions/50764529
复制相似问题