From 530b18113c5ac69e82f3b4a7b282f54aad89e70b Mon Sep 17 00:00:00 2001 From: ChenZhuo Date: Thu, 20 Feb 2025 09:17:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B8=83=E5=B1=80=E8=AE=BE=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/CMakeLists.txt | 3 + src/commandwidget.ui | 388 ++++++++++++----------------- src/communicationsettingdlg.ui | 8 +- src/mainwindow.ui | 148 +++++++++-- src/resources/Qss/qss.qss | 24 +- src/resources/images/playFast.png | Bin 0 -> 6669 bytes src/resources/images/playMedio.png | Bin 0 -> 5003 bytes src/resources/images/playSlow.png | Bin 0 -> 6561 bytes src/resources/images/stop.png | Bin 0 -> 4957 bytes src/resources/res.qrc | 4 + src/videoControl.cpp | 37 +++ src/videoControl.h | 30 +++ src/videoControl.ui | 103 ++++++++ 13 files changed, 493 insertions(+), 252 deletions(-) create mode 100644 src/resources/images/playFast.png create mode 100644 src/resources/images/playMedio.png create mode 100644 src/resources/images/playSlow.png create mode 100644 src/resources/images/stop.png create mode 100644 src/videoControl.cpp create mode 100644 src/videoControl.h create mode 100644 src/videoControl.ui diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index aa7bf2b..a1bda99 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -9,6 +9,9 @@ qt_add_executable(VideoClient global.h global.cpp communicationsettingdlg.h communicationsettingdlg.cpp communicationsettingdlg.ui commandwidget.h commandwidget.cpp commandwidget.ui + videoControl.h videoControl.ui videoControl.cpp + + ) qt6_add_resources(VideoClient "resources" diff --git a/src/commandwidget.ui b/src/commandwidget.ui index 023afc0..61cfb95 100644 --- a/src/commandwidget.ui +++ b/src/commandwidget.ui @@ -6,237 +6,175 @@ 0 0 - 1039 - 105 + 358 + 541 Form - - - 4 + + + + 20 + 30 + 295 + 431 + - - 2 - - - 4 - - - 4 - - - - - Qt::Orientation::Horizontal - - - - 40 - 20 - - - - - - - - 通信设置 - - - - res/settings.pngres/settings.png - - - - 32 - 32 - - - - - - - - 连接 - - - - - - - 断开 - - - - - - - - - - - 2 - - - 2 - - - 2 - - - 2 - - - 2 - - - - - 6 - - - 12 - - - - - 4-6图拼接 - - - - - - - 画中画开 - - - - - - - 画中画关 - - - - - - - 0-3图拼接 - - - - - - - 俯仰+ - - - - - - - 方位- - - - - - - - 方位+ - - - - - - - 扫描 - - - - - - - 红外小 - - - - - - - 锁定 - - - - - - - 吊舱 - - - - - - - 复位 - - - - - - - 变焦推远 - - - - - - - 变焦拉近 - - - - - - - 红外大 - - - - - - - 俯仰- - - - - - - - 图像切换 - - - - - - - - - - - - Qt::Orientation::Horizontal - - - - 40 - 20 - - - - - + + + + + 通信设置 + + + + res/settings.pngres/settings.png + + + + 32 + 32 + + + + + + + + 连接 + + + + + + + 断开 + + + + + + + 方位+ + + + + + + + 俯仰+ + + + + + + + 画中画开 + + + + + + + 方位- + + + + + + + 俯仰- + + + + + + + 画中画关 + + + + + + + 变焦推远 + + + + + + + 扫描 + + + + + + + 复位 + + + + + + + 变焦拉近 + + + + + + + 吊舱 + + + + + + + 锁定 + + + + + + + 红外小 + + + + + + + 图像切换 + + + + + + + 0-3图拼接 + + + + + + + 红外大 + + + + + + + 4-6图拼接 + + + + + diff --git a/src/communicationsettingdlg.ui b/src/communicationsettingdlg.ui index 32b85e6..9e7ee6b 100644 --- a/src/communicationsettingdlg.ui +++ b/src/communicationsettingdlg.ui @@ -115,7 +115,7 @@ - QAbstractSpinBox::ButtonSymbols::NoButtons + QAbstractSpinBox::NoButtons 65534 @@ -137,7 +137,7 @@ - QAbstractSpinBox::ButtonSymbols::NoButtons + QAbstractSpinBox::NoButtons 65534 @@ -154,7 +154,7 @@ - Qt::Orientation::Horizontal + Qt::Horizontal @@ -179,7 +179,7 @@ - Qt::Orientation::Horizontal + Qt::Horizontal diff --git a/src/mainwindow.ui b/src/mainwindow.ui index d074f94..45cc0c0 100644 --- a/src/mainwindow.ui +++ b/src/mainwindow.ui @@ -6,32 +6,130 @@ 0 0 - 800 - 600 + 1388 + 854 MainWindow - - - 0 - - - 0 - - - 0 - - - 0 - + - - - - + + + + + + + + + + 14 + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + 00:00:00 + + + + + + + + 854 + 0 + + + + 24 + + + false + + + + + + + 00:00:00 + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + @@ -40,8 +138,8 @@ 0 0 - 800 - 24 + 1388 + 25 @@ -50,7 +148,7 @@ VideoWidget QOpenGLWidget -
videowidget.h
+
videowidget.h
CommandWidget @@ -58,6 +156,12 @@
commandwidget.h
1
+ + VideoControl + QWidget +
videoControl.h
+ 1 +
diff --git a/src/resources/Qss/qss.qss b/src/resources/Qss/qss.qss index 7f364e7..28f5f34 100644 --- a/src/resources/Qss/qss.qss +++ b/src/resources/Qss/qss.qss @@ -1,6 +1,6 @@ /************************QWidget窗体设置****************************/ QWidget{ - background-color: rgb(50, 50, 50); + background-color: rgb(55,55,55); } /************************QPushButton按钮设置****************************/ @@ -34,6 +34,27 @@ QPushButton::disabled { +/**播放按钮样式**/ +QPushButton#medio{ + background: transparent; +} + +QPushButton#medio:hover { + + background-color: #646464; + border-color: #2f3640; + border-radius: 15px; + border-style: solid; + border-width: 1px; + padding: 1px; +} +QPushButton#medio:pressed { + background: transparent; +} + + + + /**************************QToolButton设置*************************/ QToolButton{ @@ -63,6 +84,7 @@ QToolButton::disabled { } + /**************************QLineEdit编辑框设置*************************/ QLineEdit{ color:rgb(255,255,255); diff --git a/src/resources/images/playFast.png b/src/resources/images/playFast.png new file mode 100644 index 0000000000000000000000000000000000000000..7016141ceaefb2d2608e6189914d4f4eed437375 GIT binary patch literal 6669 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

T-8o;JJ5VyJE^NP?O5nFT2%{Yi(~yikiaz z8fx_v9mqUHR=NlnMj`rUFo~a*J#}<+SmugfJtToX=6%d1@W55D@DWL(dLVa|cUpr| z_>mD0WHlF%5pMEM_FL(?8hTw%oeKgNQM%;n*-_MkfQ4TwcZ3ow-bflKAC+L0`3JEt ztOF||Z}ak6wgD)Gy1U}paXvYHAU*+HRa>jQv{^)%Zg~Sw9oY8IK(oKxzJkK6gCrY) zk)Gc5(EyGih!hG3$CcaYLI>pS^qx;kOmFLa)0FBO>{Nq<5=B?ZKacv^IL)3|1NCU> z6P0EflAiZK0J8dS!|6iPRx@G4X5qIYM(_k**tP@E`)Z7-$+o7Lu&A=M7e#&#aj5Be zQRMi8id@H?p{y?H{g}Vs!r<82_fXWc<$NVy+Y!}n$bflB>y`_@fbPLHs%3PIZ^uS; zcq!uzS6O3hD8KhI)ud1`9UwGwa^YO7h%2j)>W`;cBo1nDo4rW;yNmWzM`6Ic;Z+hH zL&16SyUC=*`uorWgMkXev?fSy^T0&wP{_QAA-0nAwljV-%y#2|F6!L(Yq=RQlGK{< zoL6fnRgidtEwk21R5h`T>QU`Z3A$WW7f72BbNcp-MA5rxPPO15i2jGI1+5vo8aoyL zts<9Z2{q_}m_+8#MuM3r`a{0ETB+30HtokYzly^(`m$c^#ma(Y@|dVmul^U<5SY+^o1xL;%CLS3bc zLHv^Wt=AdTWV>}i%P#$7##*(X#(@&5b0Sm!@f=vaaQb1xhFfB8-4|TE? zj`+v`6N-7x1MJplm%a_!S$N+;^ec~e!`DjHA{Q4!@J#xLCnqOkMDTeI^nCYfGU`4| zEW>&qX~ER50Uq^&>-RInZv@=*FOLu9cDMC(uVe*Y7}nes7Y!OsI5}}O6b;mRef2LF zx2=72TBe&6h+8z1XV(CsDyK>Im@S@7wy-$EB$$n;-8B}_Rx79gRet(E>VQ8%a{b&B@{CJBLqj|PwtV&ELNMPHi zN&8R|i+b6YNWNs_7a0F=W3Du}laXmK)0an}P9l5Q(pp(f=w12z z_6gvjtoDzck}()dnT_#+prI+#lAQ7;5#}xK(Nk_%fzFj%vK0pc>w>$a1Ui_~#D4Qq zcYocXpBZjOj_zz7MW7W7a?=0erKrNoVtbF=flaFJ;b+%Mw)9l%ic4y;bw GDdvB*^L7RR literal 0 HcmV?d00001 diff --git a/src/resources/images/playMedio.png b/src/resources/images/playMedio.png new file mode 100644 index 0000000000000000000000000000000000000000..cbb5e7441ea334b6e5b9813485bc5fc288be07da GIT binary patch literal 5003 zcmV;66Ljo}P)Px|MM*?KRCr$PT@8>N#dZE(?;S{-2nZ9~l?rx@h|7djoY)vh6k!_>LKqnX+PT9) zLb~leTToDm6MoJv5VFfifGHD$Bec_dCkqs5X9WU7_!D4}5JxE324W(|LBuhYR75HI zvHq>wdAT0;l+)>Urh9kxcJ^+k>T0iQU%!6+-nTvd^L_~9@X2_YQ@}Wrh(4x2K{yk@ zDF99w_SaGVUu$4LfPLjp{lEU(0mc>(wlMS0^k?45?-+0DqGlh^g8l`Q+B({1fG`8V zjKJW)2kJDgZ5jyh@gf8^PVShz`Tk4qKUAl_#)NHC0w7z+&SJsS!I%yNf5(rBwnlcs zI7mbW(L-$Ul+XTSZKbyLxi99n$7r)yStSwxnPMhQOx*x3iFLG%VYZFIt5bez zb*?M-&!mIQ4{6I}YwSI3-1?DSn&ZAr6ZvNMRZXr-LyKz_j3#Ff~p&nfVbSTB;oN zqd586@M;JEdRFwb`zQOig3t?KvW>tMX!nEh4})964aD?>+vWZ|2A;>T=vmt{joWx8 z`+PBgnEa7+N8r%qq^_W-z}s(}$a!D3a;$^Bhb?Z>!LkJs}# zpM1TeajNY41qOdL@8maE+1|KW-2ssGvR5!z8(%M`Y@R)Xi?CItfzm_$SNFeS(=aKt z3)d_>H`SJ!H@FC$58y;gx%NPySIt%5wQOfaURMBAJ>@f&_-+2GzN`A)wi-=BiMt=^ zK3xom`5@@2z1>Po#wyjRuC;1oL0mTgWDD85nD}N3SpdRD3}A`6T5Ysy*CfPptvnAR z0KptfkvAwu>77UHPh9{Y3-UW4++ZawV~OficUZM)Qes(<*OzC5-?A9OPn4rRVL@+1 z8an`_Ctm0U$lO z4Z!uhN5$gx6bk@kQT`N+vkZk_@5ArybNc?xkbXjt zNl$)caI2_6V0u>aqH@%QwJN7(07y?h17Mb+Aj_4bt}~>akYutbmzQrwqsPytPw8Lqv0Z_i!(eBUDXZwUz zDqX*0OxwXWBYk#V_AK`Krv|cb6~362>&j_I7~{tp0Me8Cmv6FCEhvKzD@13IG=G{g&}VwzvVUa#}i8?XdBzB7PO?(WE03ZwUHW0oZ zH7p{!rggjs>9azwQIoe z0_lK`mX2~cj|4!bkXaYyx38~s5AQoXb0XjB)oxZh4zeg8in>bHaR>R%{M<0kp#UgH z?DQFkcA;|Aiw1Npl9)6Q_!EF$0ub(0Lg)^QKne$dC$%$XRJhhX%29T%Uok0RqO&P` z7CjK5ht0}S=T@Sr2!L{+=Jz6)zab#b&pEl>6Wth%8o%`9_al7_3D>H$S~Z%Cl>y*M z?U)%ArQ4+(RcO@UTm1rMM^n8;5A!yDNjd5>#sDbC=X;?FX7sC0r9-(}PlGjJaze|* zPClJ4juds&89;hchh2pxXJGKTV-dMht!{64>W1SF9Xj;e{z3n=-KpI_EIP$sSIaBu z?Si<2l6Wm5_~aSoD4kyCsOJ~}1Tk*RPlXPe@UTj&c}Y}^-nkId7a4rfF!}VJ_<17A zxoP*wB+6Z@OtL5+0OR^FK16is$e7Aw0AS+NFIZfV>&*S2R-xl=FAH)xC`dF>@gb1D z&sgF*uKvZ0nVAv+cTp8WTSEL@4a?2(@Ql|}sBF8ElYy3~E+1_AoA zs3;2&0jX~(NB!>bF&_m0lj)y`<|J(zm7aWl@VMIALw3B)20>IZ{Lok2$k)J805F*T zk3mqQe?caojgWC%%?8qwKLPNE6~{cnllW)=L{0xOxFN?47+H`HgYajy@*OX;fx*q~ zQ9t4%00`2r66?F>$_uDbR*|(TzSj1ZK`Bw)HT`U0;zLMGmkgz~Jpuq*+k=62Jo^^GWc_*?+znPjscOW+jJG8H0^9)aF25& ztSkV4J~cbA=fJMPELD>#Dawa`d7sm#FCG&0)DZx|IGb@c$UKtyFqP;RA%;3Muy5dG z?Y|KKKo+IWv#&1{Dm{A-9X#~Ghvq*NBvwq)Q*Qv2$J%tWLDtK@#^8^K*y>{Cs15G{ zAlm0Ik%vEl?1qsuae%g&W`oGMO+v5^7@7foFqm+0)a$}v8Wgn1o$EdrhZ5uFF_r*m zrrDs|>s}xrD(505Y*cCW+4lh8$^Qu}vm$(PhHc1E+=i~iuK@sPinYOlH4A>HE!FlP zA$HiN9Q8rc1(pc(zZD4?J5{IB1(y=}GztLCFdN8%+!2=Gn!)d*Od&I!h+Yn{?yJgC zpGu_l$9N4;Ne4+?8%R(7Gk~)z$<54vO45@$!GlipQ0XZsM|HIT5UGL0?G&UZbwH^O zEUowkC0UT)0^u(!k`V4xY4x?p;Wvn&!LNX0MxCVDKo;dU!9ilm(I3XWdIr!5m@f@O ziE>oFLH3R8HfaDDS{pEN&uBh)kpqg6z+iTNN(11ZLW4d__-vAsI3^STff*|~V#a9W zP*!q{{0veE^W55`0if&K{Xr#8zVJWQH@ENAu@c(0pCkjI(IDtv*L}9|gLz84jGF)e5D+IfB6@1!nuVvOQmJ2tsQAA%0CoX5sS;893GJsWzij!=8tqiK=1l^C z8965xcGglC{VaNN(bU8H4~JDe->m_l112hl7463E}vJxtJGX$z>9J9-y)^%{)=6@z7Qa7%cyF#z68v2-C z2e%wT;xUs?ps%=&``7WXtDTFHLrBXdtae2c=(!R~HzqAdvXM(z%PF*a01#-vXaDAW zXa3vObE#iTBd5?{wb*hCx3>c0d9>q3b!9TI%8lK^0{|3dD=@?y0>9REe^pxP8h?p> z>;gktp;Mzrkx%FEZlEoz>e@O%M6eKyUI!#DLs)qS zqutd`u1Zst8$Cs!uQh8j$?8(XG;5NmsI+J{$YAUnObN22ncnpyhgWrysPbzdJgYV0$29ny<&@r z-q)KVs-{Gd-D|r)E<})ayyBC@RI!;t=DS36ovD(B=m_+E@@Yx4|LTXvQ*)}=@}err zKi~=FsL$IfyWaHDlkWofO~Zb6GxL(9p5Ysg;TW=-lSONe-G%O~AdzdfS)ja=X{Cz~ zGu$X^xMR}A_xx?oseYTU%awm1gjXVGfdB-f7mRpoFj2ymR>25^f)QGY8836Mc5Z0K zS)khKvzgn)S~5l}qGxT-Cw$@mC_*WTodufNnAON0d(o)!VlXPd4B+Eh)iruOx@rc} zYGbc~?ls+Ki1pE7?vrIW3VkAM{6Kc$XrWADEOl;}sy%;0~nb^6}-@z$XVQ za%rSZj@TC7>ZaYh#;d}UG%i_`e-1{JC$cV1~*IrX%g=Vl4Q6z zWXZ0}&SF2jwo}lL;o8gy06i;u+Wo1%E+}zc#2|jIYYr<%g=MLZLk|;@M`m^A!_-c? zu58^CcDlDj5>_CndIlJ_DAaD$e`F#66Mrk8&fjE0J5gzD zW>&=Dre8Avw4pME%rA-PG()4U_u=;@Et`g+>~$lPp8Uw*!dkngUt!qEk@~-e^rMo+ z0)X=CK$n$0!BCiYh^W_1yQ>Z9$2D2Dn7xddwede{IM8G zes$a6e)avvycqWl>>ucDL>g6N8S6}Fwb%=e`1x0PCtoqWzpc2j%>cvJ1TO%%z*G)G|sZ&nibxG~rjd6iBjnmjpqr{W-nAKD-2tG5=~>$|%@@7~f$1K11#{?FeI2s1WUvqUIXJ%O3|Z9OVySwW@od{vq6{*;EZaF z5wxlEls{6gF$F-dE+|UvS#+y`ds&nY9|z%47W`8Fs{DUO5y$=gyjAl$+9$PNC|F!n zv(euZZW9R0Og(wx8qb&mAb2HcAH$RVTS3s?MWNotCIi(GN(_G0hySu)@;9!$dgU)n z+S$_RR~fhQO!oQW@+H_5TOOm(9{^*i*d>;k`0&Nh--u;a+#D_V>GUql+)G4PSu~3# zW$XlDD}b%RC*y6Du+?w(_lg0ruf(OjlTMtpcl-YB`uG~Bo^Wc%!9543q$oATZ}U6E zVKD_MOatL`aIkot7JL$>Mt5#bq5bxWXlaz|wmC<8%7)AUBgND){a}0RM0KJ7Fr@TMF_R`H4TRW_KI>%I zD7McqabG^2*O9!5dJ+kMAq~a0wQ7vY-vZ-l67;m2c6BgEBA-M9V7SJb1Po1K^x=AK z8UP#x2A$Sc@N{sHyFmXP-;kdd;~){ez|5}@XtUet8hP+GMAizOHYEUtk7Yssf=O*1 zZ8Jcap`&5JLEKy{-ZG=;Y#Rt$;NwLIY@FONdGr03-XB(;JxR76RhFg)z-Xh=g|IXb zi0EShASeLEDP@;6?Y5@>I)=Hh=@d8mOhA7Q{p|o_i#9kj|4e`8o&1i(Thvm({{t^t VEg#a28esqc002ovPDHLkV1l*gda{pFZYIpW1loyRerrrMMUk6V$?I-_dm)i8s->c>W%! zwrpnjb!kh7%`5Kve{>FK-yZ$AeW!C|f0;w6`RzcN&#C$Tx3@b$cGPO*BJNZBp;nQ1 z!q}lqY;~K<8L%;1@2DSBi>>C0TXZey09Dw)z`%PB4y!A#IOI-OmXh@=^d4W)Wd{$0 zQqm+yaYJT<*x0rlNu#6NcV0meUVPX!M7P(~{Epaa)qw+>425Z@wQw37;kSKkbwq6S z-MGb88iaNbJu4!Y24^inx=M`;8EE?a(tpfXfCUs1zIkN@a4%HHR?FFm#{2BVoMWJ}-@(vpCp|Rq~PFt`rt8N`gXtF39iDuT1Sv%e1t~(C|$`+=t z!WNlu-c1(1oU0c}6Gxbh$F`mCz?LBIX|!Ym7ie%QzjsP|HbVoX*|5V1FZHdtBMH)q z1j%ZOAqRgMn23e{#R#v&ORqLURJ5Apc&!$$5iK}5d%M2he!t0w|GR_A-x5YYi)FDE zVGYgoUC_;x-E*C54~`qlAWG07=DOGl#1nMb!Eviud4*t#mhzz8ztqXGj6iYl={01o zq>&EMCm044qwxE~azXWGZ5&}winJh($)6!J-!Qm+WOTIt zxT=$>z*1;DRTyXlN;?c#K)@=$B|q;*;h@N&aktyR^HT$!#M1&}7j!{N%>68;vEf<;UYvDu&4j<~V! zZ$Owo?C$PbNCa$rv!o}H*uQ!M4Wx%w<8mdstFo!$$l(2@dP4`~GAEE{MhsHps2oE#!(H_360qoHJMt7+m-urJee5Z`9+nDG zK|cI5H(s$G2ATK5w89ryrzM%ob611957pNwjVVX^&V?AHWaaQ8P5g1Ar)1q-KXG;u z0PR2I2Wn<#XK%Q6>nw$6A#WWuD#ir^aBVp&RFdrHzyw0QmQ2-VC zsDW15pfpLW>N_nETg(!#{dx50*J9As1Ibx;#xUpl=D>f#Xk3PS1!XA6%H=7Vk_f|J z^RnDm&ukYbDFp`y-?6l`ba7Kr`Ex(tAn<9miA9>aQQ3cAXXJWU(qvXHW>RGX31-)m zc|ol>STL=VIsVU+Ipm(nfI?F~zjHLipzML(h}oQz+Cx}kdR+f;a&`P_kPG}vphp;f z&c|}Uuuw{)kgaHh{KK2HVxGJ4RlDdbR`bd;$@u$PCmE9JHL~?C;c(vyc*{pxzuFV*EZV<%Wra!^R63W>nF*y_mGDy7d-{xCuqcGHF(-maAbxRUW8-7P zX@n7gS$z2UGro1{^{wTXl_T6G4Q&*D$8Dtnio?Xr9wmkxfi1Ox zgBDl3-kzoyWsTO-qz#Gwym}=PY33UYMoB^X7AV)ihK}pt3)ghJibDp~p-V13Y)^as9o(Ykp$@`CHD~}6r4w>gWMry{ zS)HScY+q)^M|H{u83E4SwjjgnvIKV%pP?2li4qd`Gz z4tCGbFfWUSzKo21Bj~dC0lM2u=dyQViwX;f)mH{tT?%J8qMhqw9yT_4mqEjdmubCi zXJl}0=;=XIyMEWO>DSsx8Za+EpfEGH_9X*~`&t8leOHY01qL2LGk;V)clgWJG(qRp zddN-;Z;;vd+)~1m+t}DRZ~b!m-j3_$i`Ge8uOsFQ37d2{4~~^)L)dnrJorlu3^=VF zU5YB7u!cFwMiG*fvU>t=)lF_bU9TSx*;(m7+N|4^bDJ7zv+qkC=IrJv5Jt%P7sq5^DX3#@>tf2%oi#tejybGs@ zmxaKb!Gvq{55TPk8UNM0mK&4q*s>@eRs5;dwjlauFfARO!-WeMhM&&%-fvQ81Xt&? zqTD8*RuvMSh-25z%>}%e-KjRWcw$IRz*wK>P3mmE(}wMiQ%e;w{cVAby7M3K7r)&_ zbhV3xb5p%tH+%8?UQGNG_Ke@|1qm`PV{6K8Q+302W2;c&KThE`YJ>hEeYeB*8F<_; z&=BY6=bv|Wb|yM$3EE<-O$tlr8k_~F1|ug0BPdeAs(f!wiZoy!>o@h;;a4(0g^#l1 z7KdE8N2<_W92VnT^}=yelxp9mK@{li^`h`J#SzN~PtQ>e_83V=1m^4y%sUMp6NRD6#OAiNkorZfZ$IG0~q>*keSCdaFWa(D9g?p;aHBG z2*ZqIWJ$OcU;p6FaG>StGXXE#Yg)~D+U(GuvFAWyD;l^^pzv$AfeBadGQKfAGsE@T z>)pF|WLziH?e}px@}G;=GslR0hrrW3R{!6dB4=G4Z`&xO>h8zs@X!iy-_k-(K~P*i zV4ij$XojhjD$hdf+N!+XgP58<6nsmYlN;(}!`P*_l z3;p$c%aq1j@dCuj*lL4-XJ=M6#E#2(w;1`#nE-OR`{ZWX_+1gH{ryl{+F9w?>i7|* zU>ycYWaH$fYSK$`{g_-!#gX!>V4dBX1_-`^@Vf|X`F5F|8p8|+EyiHDP#SRf*=dTi zTcN~6ME$Cq0K%qL^2(LKG)A6^=z@gw{UvR47jii+U8x@`N*&)2ur z`}FwWOu?CMOL3D&d2nL^zyI*DCjGyTcDC~nqFmjWLraDB$2@hJWRwVGi;Kjz9!ZVs zdHiNPhKn13hvKFeNfrg2j=}%Mo1W#_%;C9g{NKfe)=F$0e>P`P@>5#P64^xS+l9*} zN~Kd&)H)*t+I+&(Z(s3&c2-V9xn=1d~YGE!LOQ((O34;a=1`xTrUM^^%6QN`e9OLDUqe~s2RktKHW?@y_S9KIH7vyF> zD?=HOwK2yVQOvtndBhS33!p4su zFwq>j;M>9#@{FaVq>0?@rYQ` zt!(fd+_8$o=Q{0Ov@GMjTel0qp=h~y>4sf%nO z#X!Raw^W|c`g4@p){AF13;xK?_$ma45&F%LD4E)e7#Vz_t>DSbFI}k5+U?bIRf8)m z^#kg6u`!iO5k{d$pJP9;D|tH{zCct5LpNqW@LEC2Y7A+)3o;eF(dq6dJ#iaeyaH)ZAArt*_+ovNh5~dczpy_U8s<-h285 zZ!(JARJ}{flR14CF1&B7_bRlABYaSCW0)19v${ebjD2ldX3;?%ivRI4z;^N}2)ZZUd2L|cV2T3w+PQv%Q0-M$S z`iTb5VtIp0ds8)eG=uD7*HK+$uI{GSKBsi%#Cj;mS#83zJ2WPMa9(P3Gfs*zyH6vY9R$yWF_C%TXt?xo${ouoZ>TgBRX?s;~0 zcH#lo+fipPiU--t4iN!5bTDf_OSyhYcM-_zTO~3q-2=)-Jeb}K255rro)~kbEw1k? za%87fV_ZqO>0@&H%cD|!e)ae7>QrwE3KoanZ~jb%ReI@Aw#&HLnZT(^MMdQy!osk0 zF>OLz>IQhmftb5i{bG)!aBc5tEvKs8$95qUa!)P1E~f9vGc&a>b^LUu&4aMtbl3en z%f+YB;&IPpT_-$=1KGDfA?mLFowPgd4u=;U3ui!ZG0cX&wG>k3RA71$w5N*|oDy2v z?!Goho^;5)Bib{WyL*+-w_B4}IMd>J1j_dN1bO!{$QyBB0avEj^^=k$GP~2SN4^mS z><9abn-koUc6N7Dj5?qcrWx)aGQ66BY3sMp0i*vJ_o#-Xp{+-AWd$Lx6QZPshwx5< zA@^abrb<{jijU@uaHZBFu^l4sJYE>$Z1-ZzGfv(N(!Ir~i_wJ0WbL?g4^UE-zQDx9 z$rdbtoQWo%8`iCX+o2zAeHD+)*kelQd32)F_|g!67e|xS;(L2!{PV^R379gLrs=7k z&n)M(e7G0BSCExlX@J(NNPOa#2IhK{NqBx>B|MB1E9H`+wS2u?=DBTrrb7ANLyDg5 zt?LTAS)G%gG!cx#7i6|aW}FP>DM`?1VB9i_`_H~jOiWIGnqE&HQqQv!G&%0pG zhOK*Pc-oqp(j=PJ_mZod2cB?kR{hMWmCrqTyvi>qCjh}4BI`VZ56mYw>$bILwnH7I zGEs^6zlP&}WvN>aIOymN{0+Q+#55o7SubZIzW7;waLUsaq~KS)pl*v6Tg4kbzgYDL znIt~pOz5cznVHcMEHx*vwB*!kZDljNu&&0Zip}#5+kya z>2SvEuy%1FhgmdhV9Ry|f!DgLN8c#3WR3xhXd>@E&lhkB4W=-WVfcH^6&#m%6s4|zrFG1r^!`&s^-o)rT1VHtvhs@)b{XTc(+vDe^I7KE z5@!D|5ZC47B;D9~tvGM^P1|7%gvZ|yE&@+E-T|qhgE;uVxA8BK)3fTYi=W&vU#~Y-GOGpZ)E_+xe*sfOQnEggH4bJAWL_|{j=Xg9-1zEs9RYLU7 z$KNe?6&f=HL*~bkfdLjxU9mUS{OdDcx6Vq1LeNoSS6LR;m&F zlbnE@Gq)$n=b0Z6YHDkDvZ8;WAJw+k1ydXcGs2Cp@+u3e6)D<30=Q{ipM7O#E4sPD zlG~spx|8hGiY)aRX*j>-G7#i=9Lm{b2L-%ri+wmHM6NgI>Z1XLkKC=LnV4Vosy96x zbynCQcSOTAxCod`X=%_!qe>+DQN(;9OET9L3W`RY>kpj(KBkMEpOyz*e5=p5X5P>9 z>S$qfzGBRDhseOTeQeWojZ0|gSqOn~a>b<079xuL_F4fz;Res~@;^sQPX}xA^aigk z&rV@p(!YL#$AZS2j}3pN&eSwe1A0{n?`ND#E84!Li3T^C&XG4a0~jOzEdp?I?JJ9R z%kdNRyL8tpz?s{V(}ACN0N;d5i9mf%y&3cz`_;uX0J;1QzOD1*SFmUITa7q;b!|S$ zQbQY}@|oh{`0B=l*|7Jz?BkxDM|c&HoAWO%Yl>8Ge%0^|>EeZQ0^)neH&; zRsl-eE|v-;M17fde2&Hgf3d! ze~}v&Yof{{-3emnTi|EiSShC2EF5+`jKZH83bI^vyu@8d-~@3{+($E)-cPxAS*tf4 z%hTe=6?z&WxH|U6bi*;{g4}$18f?hiXEwf7m^UFX_7qCYWr+BIa#U{RY!33i*Lyxocx@*IwXGdH z6b7E!CZ+!GQf6FF8=%DNG$?bSb^&q&wMwT0pZ)wB%jdnBtxptl5?F3-?l4OaHGN!P z-|dRG)HkP8VXas?u9nY}@~WZ%kL}X2bHjI=!?bSlzi20tG_!^Sd>S77knI~@UA zT>7CLXX~^ermSGNF)_5gWy-&NFF9^eaUsg?4iv<@PSz~TX{U)5sg-Ds3h)Dglt{DI jbR?)VA+9T(oI%X!sRamD8TTpwT!7|XJ#+=iChY$JM<`tl literal 0 HcmV?d00001 diff --git a/src/resources/images/stop.png b/src/resources/images/stop.png new file mode 100644 index 0000000000000000000000000000000000000000..e18ff09623c8b0ad9929812e47e651009959c0db GIT binary patch literal 4957 zcmYkAc{r5a|Hsc5OB7~`$i8b7B8nmFAbX7^30cB~Ldeb}PmQufjBW7bF@!9Yu^U3l zPIk$@CX8hm5x;r9-|P3ge&@RGbN;x`b(Z(JKkxJU+%Y%I4A|ND*Z=_RhSyPOdW-${ zIl)Y?TQry#@SMuLTJ|J9^3;&%;omFP-^K?@XW$O_Qzh;y@}A?P}R`I9>yLA&$5Qyz1^wb zV<$dVU`m!mW*LBuV~M>;G>sdisZpQf4v(?82nb-wKYB-Mgz5Z(V6UMn3=jc9SBlu& zbqn+j49qpcXp}Kr&=o*vf64*e?@d%mpF0I8jPPqn_a1@)3k%ELuIjkbkC};}&o(Cp z#|AG3K0kP+71UW-^=g^iD-?{PmjmlvWx+y#9XJf z6EfWbng$L{PkXz%CqwG$F;T1%s5S| z&F9WD0Nd4wi)5MrcWFkeixL#Fkk@&SE&Ofq^ppoje@l%u37{5<`iFC zTi{Yp*1=#?Q&XgS)Aos%Kk5RHe?Nh;ET$R}17ZE%3_w`*yKLY|(P3+ul!i4$Bjc&d zfY;>+z%@-#1w^h0c`=Pqj1t)##Yr!kIZ5U+AF|W}v!if4$wtKOm}N1ba*bUa6^6$> z#G@zEpONh|N}+Ux<-kNVZo^Pq9UguXel?|Y!Sw0Vr|NNg^|A5sTU+l5IDFNBJg_NF z9`Enw2;ip6!Jp~*iwEsbNnd22g6iN*Q;hx!9IBC}hBSDT*iY6g)Sm*AuPpl(gTOWz{SO7n?n%U3XRk|tsV0=9=CdMa4^Do>eQhU>w~h@^~r_<5(}r0ogwN1 z{C(1mZ1(W*@M0cW+Z`R9+SVa84p2hxU3lgn+&b5 z_Mg0(YL{(R&I7c`zL(cNA$f}&Ppy6)8>bLfLrrh8;Wkb(lV=r#VmA)%isdGJ{<$E3 zp+r1aIk;ZdxR1qsXd1u$5m27@bZ9f74nHgfkF=HKyd-iYf8dYvp&| z^)@j|zbC(NFB1V`6%N3(RgX1f)V8u?yT0u6Tea0<8aYxD{)2B|eE&nT;^ktD8$Coc zr|gOsKl7Fd64CdE`uh5McmonLWyHnBTjKPeYB%w?CK79^LbMS9FNz%q8|k2lw`H|z z8`t9g8(rxCz~Lcf_Waw-0Gj^$ehg(XJt4OAgQ-#b0j|>MJGj*L4vICe&O1LGn)=LP zKil!HPhGO&?)}^p#s?5B&jvg@Qla*7T=LdBFZG4Y6XsY2FVTihBJ7F;f;gI+QIyB5 zHDN5|xt3Wx^wXj+Ppv1$gESr{+L~bRfm!-+o*P81+Ar0F_YhRe?CXOzk86-O!Z=5o zO6}_${Ad)X0>Nk;9zi^PmtUG$%W-t(ncdP&Nutu{>B=&QODrQ;o31D>EAzgOhN7M6 zvJTh13qkE@69@Bm>l}R22C>5#;q2t~zOT#(SHhWA_>~v{bN{hq`erFO((07`E*~ZQ z*rI;rH72Jqanr|hcUG4&6NP7KYap2 zPQ#~Gf+r)peFT?m!>0D8uA`3mxDUQQ^fM~7X{)vYjx1)NTHNR|E~s!R_|Bt}hTCF< zjROG$X{c`ewQUh-=X*{dv^07|F6ZRk)_I!C!wG9EQX3%sLB751-ry5U>6*0S;Rcd^Fwg+%0 zj51=O{0tzxW&vbD(MQG-0R=DhF5Kk9Dfl&phVPlYK9h%# zd^sxvTJ?`f=i7Uz`jPGW1e2jJH^H=}7moJNiQ^sl>xkp?=4?Z@y$i8_50Bqn%eT|P z z*mH3+aTC`3=U^L2Xb!ig0@<@|yd15n9$z%uU*X6_$r&murdbdn>D(u;tV1>au)JMl zOsJ7xc(mUt(1m}~3B=ZS)xDiLl_A(^+FqkmhHQ#a0XsXpZ+>?+_sDvsdlU(y!dXB} zOiUcP$`|L}vZI4)Z2R(w6{v)D#U`Vvwx3A0YYd{Tdm*w0gxwMnk9G0T^SQybdx9>f zSYG?wXjgFk_S}yF#CJaJHAZL-8EVf_0z*5|0tN*u-5f74Q zH0&n@H$%PR1g3uhLmQIw+Ee-q-)X z%~C`Dgb$BLp1M7oqdm1(1;5$p5(RU&*I92%-wr+Btp0i^2UGAY?Yp@}?;;Zz(}rRhiH7Xn*7dzH(77il@ie zvCGBN&AiE*%TTRsJXWRc?`8o4y(c3mP_6bk(H^wpcLk~@5b} zis232R=kuhhhQ?gvWpjQm$$>k1d>*JcrBnkl-c zd(3ljrrDkDp;-!E{{A}^o14Bp5H37&<9hCf_Iy9bXN+*06mJ<*b)_jv0m)g1TM+YZNMV=en(KsMSo`jdM_3QZ; zjXIt^pQIOf#_(L_(BlsnJn=eD&J4~!-AZa@77F9y)b|gje89-PW)WuqT;^@}6vXW3 z6IWg~%fb2| z7!{VUe)$#Z;4?qAZ;h%KHR0~QrJb$UDw$&B>YZFGmXnYpq10C1zYu?2A9pJ_dynMo zg)Dfytcm8Cc5K4@K-C6>q?g^3_D|7`OQa4LW!7B!dZK}lYE5I~)IN_XDrWdkA<|SCYNAL-He=L|!iWgGUo9DZdA9xP zt-G~Ud(UuDv51i&A+dS7lE6R^L5x?wvtAUb9ywwgN%$ww zdD*czc`J#R`r$4^{v-Oac={6x1~z0;JBwe0Mh(xw3EQewk)1pm`8VSX5%&DP(pSc_ zAyRiRNQreQ_Lk}$#?hNHDc0OqpBZ?{RL{(PN~oV_ed~ZnlabF#v#b=Mpem0PL9UVN z_N!zo=Y-$lu6%meL#F!s(x*TU55Hb&6#8c}FEZXr(gHAsGH3|3h1`EvE@pPvkFura z$IV_rEPSvL=l_Ua1Sho0Ie=7if(uur{JTUna)aBMlA&P5;Lc&z@KGYaugVxPc1LaC z8yqlpezHX!`ZL@gf%o$f2aQ=VZgxXW&l6ZQb{$Xm)05#$WdB$^L&!(6&Qbi$ zjJS8(Or`z%l(V1gt-Aw9?Fs$wHS;k8`UVgf7F!lK7L_*twfR=YYG&{7;_Rm)l^3x^ zXBZ!pCrS-Zo}VUN;5}>|sWY5kQvo(nF}LUk&Pv!33-QVZf4n zuLXZwF6A~Ifm}i`s%2~;L_5BZ_O~|>)>~~m(_4frjIQBR(6f|&+eUUUDHTn@Er-$5 zUXC9Mkxy{FTXLH5P|Tjhsw-GVDQwqkh8YTM?Y{-Ao>k|TpU zlXS9maRbRxCTj?zbe2^#h&1~j z!{c#Ag(bJQOj|DSfHW@k6W8q_;80E3^!X!`Z2{orrNqbo{P}Z(Eiv~}aLH9)g%vK( zg5`v2^`5b+Qnd;5m=XDYuocvqZVXJURF*F4v~nsHY#PtmbdC$Wd-rv0ye1u2c^xs9 zpjjok2htQT5M-hqVV8J=MzZRf3zG6(y6Ca&M&vTzuaUpZ3@nsa4vus{P#tM^O$Rq6 zlKaE~!v_z%<9Td%o2lp`s*SqM>+=jobD8#CvSN{Gd zD=MtZ_F&m$|3bpImUlp_n1i|O&HJGTPe_lSz-9xwPqhb@v%<%j_hXi&akSIN tv?)MIBJE1+oDib?_s^1wi`GKak7KB*)h|{25FH=r#Zb=-RjT6{^*=xUUmO4c literal 0 HcmV?d00001 diff --git a/src/resources/res.qrc b/src/resources/res.qrc index a8dec87..f7ed0c4 100644 --- a/src/resources/res.qrc +++ b/src/resources/res.qrc @@ -9,5 +9,9 @@ images/settings.png images/up.png images/wifi4G.png + images/playMedio.png + images/stop.png + images/playFast.png + images/playSlow.png diff --git a/src/videoControl.cpp b/src/videoControl.cpp new file mode 100644 index 0000000..02bc546 --- /dev/null +++ b/src/videoControl.cpp @@ -0,0 +1,37 @@ +#include "videoControl.h" +#include "ui_videoControl.h" + +VideoControl::VideoControl(QWidget *parent) : + QWidget(parent), + ui(new Ui::VideoControl) +{ + ui->setupUi(this); + // 其他初始化代码... + + + ui->pbPlayer->setIcon(QIcon(":/images/playMedio.png")); + ui->pbPlayer->setIconSize(QSize(56,56)); + ui->pbPlayer->setFixedSize(64, 64); + ui->pbPlayer->setObjectName("medio"); + // ui->pbPlayer->set + ui->pbStop->setIcon(QIcon(":/images/stop.png")); + ui->pbStop->setIconSize(QSize(42,42)); + ui->pbStop->setFixedSize(50, 50); + ui->pbStop->setObjectName("medio"); + + ui->pbFast->setIcon(QIcon(":/images/playFast.png")); + ui->pbFast->setIconSize(QSize(42,42)); + ui->pbFast->setFixedSize(50, 50); + ui->pbFast->setObjectName("medio"); + + + ui->pbSlow->setIcon(QIcon(":/images/playSlow.png")); + ui->pbSlow->setIconSize(QSize(42,42)); + ui->pbSlow->setFixedSize(50, 50); + ui->pbSlow->setObjectName("medio"); +} + +VideoControl::~VideoControl() +{ + delete ui; +} diff --git a/src/videoControl.h b/src/videoControl.h new file mode 100644 index 0000000..54f7282 --- /dev/null +++ b/src/videoControl.h @@ -0,0 +1,30 @@ +#ifndef VIDEOCONTROL_H +#define VIDEOCONTROL_H + +#include + + +namespace Ui { +class VideoControl; +} + + +class VideoControl : public QWidget { + Q_OBJECT + + + +public: + explicit VideoControl(QWidget *parent = nullptr); + ~VideoControl(); + + +private: + Ui::VideoControl *ui; + +}; + + +#endif // VIDEOCONTROL_H + + diff --git a/src/videoControl.ui b/src/videoControl.ui new file mode 100644 index 0000000..710f1e6 --- /dev/null +++ b/src/videoControl.ui @@ -0,0 +1,103 @@ + + + VideoControl + + + + 0 + 0 + 713 + 91 + + + + Form + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + 6 + + + QLayout::SetDefaultConstraint + + + + + + + + false + + + + + + + + + + false + + + + + + + + + + false + + + + + + + + + + false + + + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + +