Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
sbkpay
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zhenfei.zhang
sbkpay
Commits
f3e61a35
Commit
f3e61a35
authored
Aug 10, 2017
by
NitefullWind
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1. 实现是loading和计时界面。
parent
5b86310c
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
192 additions
and
14 deletions
+192
-14
sbkpay/hostwidget.cpp
+23
-0
sbkpay/hostwidget.h
+5
-1
sbkpay/hostwidget.ui
+62
-11
sbkpay/labelstimer.cpp
+54
-0
sbkpay/labelstimer.h
+36
-0
sbkpay/res.qrc
+5
-0
sbkpay/res/loding.gif
+0
-0
sbkpay/sbkpay.pro
+7
-2
No files found.
sbkpay/hostwidget.cpp
View file @
f3e61a35
...
@@ -3,6 +3,9 @@
...
@@ -3,6 +3,9 @@
#include "QKeyEvent"
#include "QKeyEvent"
#include "QsLog.h"
#include "QsLog.h"
#include "fmtool.h"
#include "fmtool.h"
#include "labelstimer.h"
#include <QMovie>
HostWidget
::
HostWidget
(
QWidget
*
parent
)
:
HostWidget
::
HostWidget
(
QWidget
*
parent
)
:
FMPWindow
(
parent
),
FMPWindow
(
parent
),
...
@@ -19,6 +22,14 @@ HostWidget::HostWidget(QWidget *parent) :
...
@@ -19,6 +22,14 @@ HostWidget::HostWidget(QWidget *parent) :
_curr_show_widget
=
NULL
;
_curr_show_widget
=
NULL
;
InitWidget
();
InitWidget
();
_label_pay_timer
=
new
LabelsTimer
(
ui
->
label_pay_time
,
60
,
"% 秒"
);
connect
(
_label_pay_timer
,
&
LabelsTimer
::
timeout
,
this
,
&
HostWidget
::
on_btn_mananger_exit_clicked
);
_label_pay_movie
=
new
QMovie
(
":res/loading.gif"
);
_label_pay_movie
->
start
();
ui
->
label_pay_time_load
->
setMovie
(
_label_pay_movie
);
}
}
void
HostWidget
::
ShowWidget
(
QWidget
*
showwidget
)
void
HostWidget
::
ShowWidget
(
QWidget
*
showwidget
)
...
@@ -29,6 +40,8 @@ void HostWidget::ShowWidget(QWidget *showwidget)
...
@@ -29,6 +40,8 @@ void HostWidget::ShowWidget(QWidget *showwidget)
ui
->
lineEdit_pay_code
->
clear
();
ui
->
lineEdit_pay_code
->
clear
();
ui
->
lineEdit_pay_code
->
setWindowOpacity
(
0
);
ui
->
lineEdit_pay_code
->
setWindowOpacity
(
0
);
ui
->
lineEdit_pay_code
->
setFocus
();
ui
->
lineEdit_pay_code
->
setFocus
();
_label_pay_timer
->
start
(
60
,
"%1 秒"
);
}
}
for
(
int
i
=
0
;
i
<
_widgetlist
.
size
();
++
i
)
for
(
int
i
=
0
;
i
<
_widgetlist
.
size
();
++
i
)
...
@@ -55,6 +68,10 @@ void HostWidget::InitWidget()
...
@@ -55,6 +68,10 @@ void HostWidget::InitWidget()
HostWidget
::~
HostWidget
()
HostWidget
::~
HostWidget
()
{
{
delete
ui
;
delete
ui
;
if
(
_label_pay_timer
!=
NULL
)
{
delete
_label_pay_timer
;
_label_pay_timer
=
NULL
;
}
}
}
void
HostWidget
::
keyPressEvent
(
QKeyEvent
*
ke
)
void
HostWidget
::
keyPressEvent
(
QKeyEvent
*
ke
)
...
@@ -65,6 +82,8 @@ void HostWidget::keyPressEvent(QKeyEvent *ke)
...
@@ -65,6 +82,8 @@ void HostWidget::keyPressEvent(QKeyEvent *ke)
ui
->
label_pay_money
->
hide
();
ui
->
label_pay_money
->
hide
();
ui
->
label_pay_title
->
setText
(
"支付宝支付中..."
);
ui
->
label_pay_title
->
setText
(
"支付宝支付中..."
);
_label_pay_timer
->
start
(
60
,
"%1 秒"
);
QStringList
list
;
QStringList
list
;
list
.
append
(
ui
->
lineEdit_pay_code
->
text
());
list
.
append
(
ui
->
lineEdit_pay_code
->
text
());
...
@@ -95,12 +114,16 @@ void HostWidget::ShowWithRequest(AlipayRequest request)
...
@@ -95,12 +114,16 @@ void HostWidget::ShowWithRequest(AlipayRequest request)
{
{
ShowWidget
(
ui
->
pay
);
ShowWidget
(
ui
->
pay
);
_curr_show_widget
=
ui
->
pay
;
_curr_show_widget
=
ui
->
pay
;
double
Amount
=
FMTool
::
GetString
(
_data
.
Amount
,
12
).
toInt
()
/
100.0
;
ui
->
label_pay_money
->
setText
(
QString
(
"需收取 ¥ %1"
).
arg
(
Amount
));
}
}
if
(
reqtype
.
compare
(
"40"
)
==
0
)
if
(
reqtype
.
compare
(
"40"
)
==
0
)
{
{
ShowWidget
(
ui
->
pay
);
ShowWidget
(
ui
->
pay
);
_curr_show_widget
=
ui
->
pay
;
_curr_show_widget
=
ui
->
pay
;
double
Amount
=
FMTool
::
GetString
(
_data
.
Amount
,
12
).
toInt
()
/
100.0
;
ui
->
label_pay_money
->
setText
(
QString
(
"退款 ¥ %1"
).
arg
(
Amount
));
}
}
if
(
reqtype
.
compare
(
"80"
)
==
0
)
if
(
reqtype
.
compare
(
"80"
)
==
0
)
...
...
sbkpay/hostwidget.h
View file @
f3e61a35
...
@@ -7,6 +7,9 @@
...
@@ -7,6 +7,9 @@
#include <QList>
#include <QList>
#include <QStringList>
#include <QStringList>
class
LabelsTimer
;
class
QMovie
;
namespace
Ui
{
namespace
Ui
{
class
HostWidget
;
class
HostWidget
;
}
}
...
@@ -66,7 +69,8 @@ private:
...
@@ -66,7 +69,8 @@ private:
AlipayRequest
_data
;
AlipayRequest
_data
;
LabelsTimer
*
_label_pay_timer
;
QMovie
*
_label_pay_movie
;
};
};
#endif // HOSTWIDGET_H
#endif // HOSTWIDGET_H
sbkpay/hostwidget.ui
View file @
f3e61a35
...
@@ -538,21 +538,72 @@
...
@@ -538,21 +538,72 @@
</spacer>
</spacer>
</item>
</item>
<item>
<item>
<widget
class=
"QLabel"
name=
"label_pay_time"
>
<widget
class=
"QWidget"
name=
"widget_pay_time"
native=
"true"
>
<property
name=
"styleSheet"
>
<property
name=
"minimumSize"
>
<string
notr=
"true"
>
#label_pay_time
<size>
<width>
64
</width>
<height>
64
</height>
</size>
</property>
<property
name=
"maximumSize"
>
<size>
<width>
64
</width>
<height>
64
</height>
</size>
</property>
<widget
class=
"QLabel"
name=
"label_pay_time"
>
<property
name=
"geometry"
>
<rect>
<x>
0
</x>
<y>
0
</y>
<width>
64
</width>
<height>
64
</height>
</rect>
</property>
<property
name=
"styleSheet"
>
<string
notr=
"true"
>
#label_pay_time
{
{
font: 16px
"
微软雅黑
"
;
font: 16px
"
微软雅黑
"
;
color: rgb(0, 179, 238);
color: rgb(0, 179, 238);
}
</string>
</property>
min-width: 64px; min-height:64px;
<property
name=
"text"
>
max-width: 64px; max-height:64px;
<string>
60秒
</string>
}
</property>
</string>
<property
name=
"alignment"
>
</property>
<set>
Qt::AlignCenter
</set>
<property
name=
"text"
>
</property>
<string>
60秒
</string>
</property>
<property
name=
"alignment"
>
<set>
Qt::AlignCenter
</set>
</property>
</widget>
<widget
class=
"QLabel"
name=
"label_pay_time_load"
>
<property
name=
"geometry"
>
<rect>
<x>
0
</x>
<y>
0
</y>
<width>
64
</width>
<height>
64
</height>
</rect>
</property>
<property
name=
"minimumSize"
>
<size>
<width>
64
</width>
<height>
64
</height>
</size>
</property>
<property
name=
"maximumSize"
>
<size>
<width>
64
</width>
<height>
64
</height>
</size>
</property>
<property
name=
"text"
>
<string>
TextLabel
</string>
</property>
</widget>
</widget>
</widget>
</item>
</item>
<item>
<item>
...
...
sbkpay/labelstimer.cpp
0 → 100644
View file @
f3e61a35
#include "labelstimer.h"
#include <QTimer>
#include <QDebug>
LabelsTimer
::
LabelsTimer
(
QLabel
*
label
,
int
time
,
QString
format
)
:
QObject
(
label
),
_label
(
label
),
_timer
(
new
QTimer
(
label
)),
_time
(
time
),
_format
(
format
)
{
connect
(
_timer
,
&
QTimer
::
timeout
,
this
,
&
LabelsTimer
::
onTimeout
);
}
LabelsTimer
::~
LabelsTimer
()
{
if
(
_timer
!=
NULL
)
{
delete
_timer
;
_timer
=
NULL
;
}
}
void
LabelsTimer
::
start
()
{
_label
->
setText
(
_format
.
arg
(
_time
));
_timer
->
setInterval
(
1000
);
_timer
->
start
();
}
void
LabelsTimer
::
start
(
int
time
,
QString
format
)
{
_time
=
time
;
_format
=
format
;
start
();
}
void
LabelsTimer
::
stop
()
{
_timer
->
stop
();
}
void
LabelsTimer
::
onTimeout
()
{
if
(
_time
<=
1
)
{
_timer
->
stop
();
emit
timeout
();
// this->deleteLater();
}
else
{
_time
=
_time
-
1
;
_label
->
setText
(
_format
.
arg
(
_time
));
emit
timeChanged
(
_time
);
}
}
sbkpay/labelstimer.h
0 → 100644
View file @
f3e61a35
#ifndef LABELSTIMER_H
#define LABELSTIMER_H
#include <QWidget>
#include <QLabel>
class
QTimer
;
class
LabelsTimer
:
public
QObject
{
Q_OBJECT
public
:
explicit
LabelsTimer
(
QLabel
*
label
,
int
time
,
QString
format
=
"%1"
);
virtual
~
LabelsTimer
();
void
start
();
void
start
(
int
time
,
QString
format
=
"%1"
);
void
stop
();
signals
:
void
timeout
();
void
timeChanged
(
int
time
);
public
slots
:
private
slots
:
void
onTimeout
();
private
:
QLabel
*
_label
;
QTimer
*
_timer
;
int
_time
;
QString
_format
;
};
#endif // LABELSTIMER_H
sbkpay/res.qrc
0 → 100644
View file @
f3e61a35
<RCC>
<qresource prefix="/">
<file>res/loading.gif</file>
</qresource>
</RCC>
sbkpay/res/loding.gif
0 → 100644
View file @
f3e61a35
18.3 KB
sbkpay/sbkpay.pro
View file @
f3e61a35
...
@@ -19,7 +19,8 @@ CONFIG += C++11
...
@@ -19,7 +19,8 @@ CONFIG += C++11
SOURCES
+=
main
.
cpp
\
SOURCES
+=
main
.
cpp
\
hostwidget
.
cpp
\
hostwidget
.
cpp
\
control
.
cpp
control
.
cpp
\
labelstimer
.
cpp
HEADERS
+=
hostwidget
.
h
\
HEADERS
+=
hostwidget
.
h
\
fmp_window
.
h
\
fmp_window
.
h
\
...
@@ -29,6 +30,10 @@ HEADERS += hostwidget.h \
...
@@ -29,6 +30,10 @@ HEADERS += hostwidget.h \
payinterface
.
h
\
payinterface
.
h
\
fmerror
.
h
\
fmerror
.
h
\
fmtool
.
h
\
fmtool
.
h
\
jsonfactory
.
h
jsonfactory
.
h
\
labelstimer
.
h
FORMS
+=
hostwidget
.
ui
FORMS
+=
hostwidget
.
ui
RESOURCES
+=
\
res
.
qrc
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment