This commit is contained in:
zhuzichu 2023-07-06 18:17:52 +08:00
parent ad4d077480
commit 80619f6974
5 changed files with 82 additions and 64 deletions

View File

@ -24,6 +24,7 @@ FluScrollablePage{
FluTextButton{
disabled:text_button_switch.checked
text:"Text Button"
contentDescription: "文本按钮"
onClicked: {
showInfo("点击Text Button")
}

View File

@ -168,7 +168,10 @@ CustomWindow {
width: parent.width
height: parent.height
z:999
// pageMode: FluNavigationView.NoStack
//NoStack
// pageMode: FluNavigationView.NoStack
//StackpopFluPagelaunchMode
pageMode: FluNavigationView.NoStack
items: ItemsOriginal
footerItems:ItemsFooter
topPadding:FluTools.isMacos() ? 20 : 5

View File

@ -19,24 +19,41 @@ Item{
property string errorButtonText: "重新加载"
property color color: FluTheme.dark ? Window.active ? Qt.rgba(38/255,44/255,54/255,1) : Qt.rgba(39/255,39/255,39/255,1) : Qt.rgba(251/255,251/255,253/255,1)
signal errorClicked
property Component loadingItem : com_loading
property Component emptyItem : com_empty
property Component errorItem : com_error
Item{
id:container
anchors.fill: parent
visible: statusMode === FluStatusView.Success
visible: statusMode===FluStatusView.Success
}
Loader{
id:loader
anchors.fill: parent
visible: statusMode!==FluStatusView.Success
sourceComponent: {
if(statusMode === FluStatusView.Loading){
return loadingItem
}
if(statusMode === FluStatusView.Empty){
return emptyItem
}
if(statusMode === FluStatusView.Error){
return errorItem
}
return null
}
}
Component{
id:com_loading
FluArea{
paddings: 0
border.width: 0
anchors.fill: container
visible: opacity
opacity: statusMode === FluStatusView.Loading
Behavior on opacity {
NumberAnimation { duration: 83 }
}
radius: 0
color:control.color
ColumnLayout{
anchors.centerIn: parent
visible: statusMode === FluStatusView.Loading
FluProgressRing{
indeterminate: true
Layout.alignment: Qt.AlignHCenter
@ -47,19 +64,16 @@ Item{
}
}
}
}
Component {
id:com_empty
FluArea{
paddings: 0
border.width: 0
anchors.fill: container
visible: opacity
radius: 0
color:control.color
opacity: statusMode === FluStatusView.Empty
Behavior on opacity {
NumberAnimation { duration: 83 }
}
ColumnLayout{
anchors.centerIn: parent
visible: statusMode === FluStatusView.Empty
FluText{
text:control.emptyText
font: FluTextStyle.BodyStrong
@ -67,16 +81,14 @@ Item{
}
}
}
}
Component{
id:com_error
FluArea{
paddings: 0
border.width: 0
anchors.fill: container
visible: opacity
radius: 0
color:control.color
opacity: statusMode === FluStatusView.Error
Behavior on opacity {
NumberAnimation { duration: 83 }
}
ColumnLayout{
anchors.centerIn: parent
FluText{
@ -94,6 +106,7 @@ Item{
}
}
}
}
function showSuccessView(){
statusMode = FluStatusView.Success
}

View File

@ -83,6 +83,7 @@ TextField{
right: parent.right
rightMargin: closeRightMargin
}
contentDescription:"清空"
onClicked:{
control.text = ""
}