AbstractButton
是一个抽象基类,不能实例化。它为所有按钮类型提供基础功能和属性
作用: 为派生的具体按钮提供统一接口和基础功能
/*----------导入语句----------*/
import QtQuick.Controls
/*----------继承----------*/
Control
//继承成员
Button, CheckBox, DelayButton,
ItemDelegate, MenuBarItem, MenuItem,
RadioButton, Switch, TabButton
/*----------属性:值----------*/
action: Action
//用于保存按钮动作
autoExclusive: bool
//该属性显示是否启用了自动排他性。
//如果启用,同一ButtonGroup,任何时候只能选中一个按钮;选中另一个按钮会自动取消选中之前选中的按钮。
//注: 该属性对属于ButtonGroup 的按钮不起作用。
//RadioButton 和 TabButton 默认自动排他性。
autoRepeat: bool
//用于保存按钮在按住时是否重复发送pressed(),released() 和clicked() 信号
//为true ,则不会发出pressAndHold() 信号
//初始延迟和重复间隔由autoRepeatDelay 和autoRepeatInterval 定义,单位为毫秒。
//默认值为 false
autoRepeatDelay: int
//以毫秒为单位保存自动重复的初始延迟。默认值为300 ms
autoRepeatInterval: int
//以毫秒为单位保存自动重复的时间间隔。默认值为100 ms
checkable: bool
//按钮是否可选中,默认值为false
display: enumeration
//决定icon 和text 在按钮中的显示方式
AbstractButton.IconOnly//仅显示图标
AbstractButton.TextOnly//仅显示文本
AbstractButton.TextBesideIcon//文字在图标右方(默认)
AbstractButton.TextUnderIcon//文字在图标下方
down: bool
//保持按钮是否可视化向下
//除非明确设置,否则该属性将沿用pressed 的值。要返回默认值,请将该属性设置为undefined
icon
//图标相关
icon.name: string//图标名称,从平台主题加载,找不到图标,则使用icon.source 代替
icon.width: int//图标的宽度永远不会超过此值,但必要时会缩小
icon.height: int//图标的高度永远不会超过此值,但必要时会缩小
icon.color: color//除非颜色设置为"transparent" ,否则图标将使用指定颜色
icon.source: url//图标名称,作为普通图片加载,若icon.name 已设置一个有效的主题图标,则此项失效
icon.cache: bool//用于指定是否缓存图标,默认值为 true
implicitIndicatorHeight: real
//该属性保存隐式指示符高度,real:浮点数
//通常与implicitContentHeight 和implicitBackgroundHeight 一起用于计算implicitHeight
implicitIndicatorWidth: real
//该属性保存隐式指示器宽度,real:浮点数
//通常与implicitContentWidth 和implicitBackgroundWidth 一起用于计算implicitWidth
indicator: Item
//该属性包含指标项
pressX: real
//该属性保存最后一次按下的 x 坐标
//注意: 该值在触摸移动时更新,但在触摸释放后保持不变
pressY: real
//该属性保存最后一次按下时的 y 坐标
//注意: 该值在触摸移动时更新,但在触摸释放后保持不变
pressed: bool
//表示按钮是否被按下,按钮可通过触摸或按键事件按下
text: string
//包含按钮的文字描述
/*----------信号----------*/
canceled()
//当按钮在按下时失去鼠标抓取功能,或本应发出released 信号但鼠标光标不在按钮内时,就会发出该信号
//注: 相应的处理程序是onCanceled
clicked()
//点击按钮时,将发出该信号
//注: 相应的处理程序是onClicked
doubleClicked()
//双击按钮时,会发出该信号
//注: 相应的处理程序是onDoubleClicked
pressAndHold()
//按住按钮时,会发出该信号。启用autoRepeat 时不会发出该信号。
//注: 相应的处理程序是onPressAndHold
pressed()
//按下按钮时,将发出该信号
//注: 相应的处理程序是onPressed
released()
//释放按钮时,将发出该信号
//注: 相应的处理程序是onReleased
toggled()
//切换可复选按钮时,将发出该信号
//注: 相应的处理程序是onToggled
Button
/*----------导入语句----------*/
import QtQuick.Controls
/*----------继承----------*/
AbstractButton
//继承成员
RoundButton, ToolButton
/*----------属性:值----------*/
flat: bool
//按钮是否为平面按钮,除非按下或选中,否则平面按钮通常不会绘制背景
//默认值为false
highlighted: bool
//显示按钮是否高亮显示,默认值为false
/*----------连接按钮信号示例----------*/
RowLayout {
Button {
text: "Ok"
onClicked: model.submit()
}
Button {
text: "Cancel"
onClicked: model.revert()
}
}
ButtonGroup
/*----------导入语句----------*/
import QtQuick.Controls
/*----------继承----------*/
QtObject
/*----------属性:值----------*/
flat: bool
//按钮是否为平面按钮,除非按下或选中,否则平面按钮通常不会绘制背景
//默认值为false
highlighted: bool
//显示按钮是否高亮显示,默认值为false
/*----------连接按钮信号示例----------*/
RowLayout {
Button {
text: "Ok"
onClicked: model.submit()
}
Button {
text: "Cancel"
onClicked: model.revert()
}
}
如何自定义控件