From 320114533d7e4083fb51d6ff9cc9084536e00a31 Mon Sep 17 00:00:00 2001 From: EillesWan Date: Mon, 7 Feb 2022 18:51:51 +0800 Subject: [PATCH] =?UTF-8?q?=E6=80=9D=E6=83=B3=E7=A1=AE=E8=AE=A4=EF=BC=8C?= =?UTF-8?q?=E5=85=B7=E4=BD=93=E8=AF=B7=E7=9C=8B=E7=BE=A4=E5=86=85=EF=BC=8C?= =?UTF-8?q?=E6=AD=A3=E5=9C=A8=E8=BF=9B=E4=B8=80=E6=AD=A5=E4=BF=AE=E6=94=B9?= =?UTF-8?q?UI=EF=BC=8C=E4=BB=A5=E5=8F=8A=E6=8F=92=E4=BB=B6=E6=95=88?= =?UTF-8?q?=E6=9E=9C=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Musicreater.New.py | 12 ++++++---- Musicreater.py | 4 +--- msctLib/UI设计图.pdn | Bin 0 -> 33595 bytes msctLib/UI设计图.png | Bin 0 -> 19257 bytes msctLib/display.py | 28 ++++++++++++++++++++++- msctLib/function.py | 6 +++++ msctLib/开发说明兼指南.md | 46 +++++++++++++++++++++++++++++++++++++- 7 files changed, 87 insertions(+), 9 deletions(-) create mode 100644 msctLib/UI设计图.pdn create mode 100644 msctLib/UI设计图.png create mode 100644 msctLib/function.py diff --git a/Musicreater.New.py b/Musicreater.New.py index 4b64f3d..68c24d1 100644 --- a/Musicreater.New.py +++ b/Musicreater.New.py @@ -37,11 +37,11 @@ from msctspt.bugReporter import version __ver__ = f'{version.version[1]} {version.version[0]}' __author__ = '金羿Eilles' +from msctLib.display import * +from msctLib.function import * - - - +from msctLib.data import uniteIO @@ -50,7 +50,11 @@ __author__ = '金羿Eilles' def __main__(): - pass + disp( + root, + False, + + ) diff --git a/Musicreater.py b/Musicreater.py index fe0b2b4..1e2b3b0 100644 --- a/Musicreater.py +++ b/Musicreater.py @@ -61,9 +61,7 @@ from nmcsup.vers import VER __version__ = VER[1] + VER[0] __author__ = '金羿Eilles & 诸葛亮与八卦阵bgArray' -dire = "" -begp = "" -endp = "" + print('建立变量,存入内存,载入字典常量函数') diff --git a/msctLib/UI设计图.pdn b/msctLib/UI设计图.pdn new file mode 100644 index 0000000000000000000000000000000000000000..48d702fdbc332aee45b26ca9d081ba86d8f178ee GIT binary patch literal 33595 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 Ixd`!p096EdcK`qY literal 0 HcmV?d00001 diff --git a/msctLib/UI设计图.png b/msctLib/UI设计图.png new file mode 100644 index 0000000000000000000000000000000000000000..00a5e63d0468397a49b7b8361b6d6956b869833e GIT binary patch literal 19257 zcmeIZc{tST|35yWsE*_miW;Y!>ezD%g&9g{ktJ)0;*{)!n6b7hV(LUh_6%i9*2GY@ zBKw+cLKy2XhG8)CeZHLK^FHVF{(L{5??1omcU^DSRm}RjU-x}KpU=nh@p#<#^>nm& zHwkY-p-{Z1PM$c2LUB@1sCCmk8{ipCsLEOR#o>NV>o_W_Vb>Tu;Ich-_81D4L)g4> zX+1pN=z8+JI|{X>0{O>Li= z!(VuwK5k=gKfW(ml=qjDdoJ_rOgGqj;&9ZyoqPFD-?cdXK_z|bbbw!c?m`arjcwPm zDWlhO!N1HZo9d9Azksdi_e!7p+&JeK#|4-F|L>0nDUMd~_^gZz2MQHcq=YTIuAwFy z9t1a}eHeo|T72EtKQ^)CvT)JrLQh??-RO(dI0*ui7c1&mv@GgJZ>I5}P=RB|)Z#U> zN@%rtZRgIUl(FWsha<-QRwt}WA*()Azn!sZ7kr;xgR4iLM8|{$wrX?vv#>{eO_hVh`Q+03km6cPE_YV)%hz6)!xc>RFU2eTXooYap zfXSy$GMmL1t%>z#jxDXsX9xI^VCSUWa(+4}lVI}0I_7MRXna=bLN~qTjBJYN$`@|C zg3njZn7fpElGr_D*7fnJsro&OBIHHQ;_;X18`d#jre{UVl+s&PiUv*uhKEYFVJ6AL@pY2kiWX)3R^R#II0Rr$KHejln+$&K8l(RkI}9!iJ*PFM;S7rjBQo)gbC$V1`7(Djs-zCLbMn#g#JWz7;&hr*O) z=I7^AY{HK2C+Nr)_FfyiK*gJ&k6GD-%EQR6mRXhT6yaFyFn2i{wEMa#NpOBJM3!h9 z@29Xjs>(jar@G>b|N2O4!+0R)mXphqxw`9jRX z%A;9h?3sJRDMqimE-U&vC-YFF%47e<3Q;0A+WQCTx0A2!o}9mOYBWB;-^{Dev-RgX zsmGR#;?Ch$taPhYi7C?Z^spC&kHSAWB*z zUKM*nO_f?Q*J47VMbJ*47IA!ajM?Btdi=x^Kj!P-dBH11)^F_0IwcfJPqOd(rp!Uh z#88FqpLD$lFQypefB?%QGE9<)=WLZwB*FJGcJUqG2>+Z@!RP()HTKi|ZR*6XZ_DNfimIDr=UoS4LGwS=8Z3E0#cLg4MN;`Ek63x+iE3f0<-`#ney^=Jan&$Dw_e1yNlM!yKN&?SbMZ!>s9UD-|bu94hC$w@F*VckCv_d!7QP=T|6b(H5?HmMAxKwI;JZ;?oxD zw7Nxk@?isp(d&!3$#i|E${Y+Trt-RYtCK__XU*IJmUufnjT?dc~tt% z*I#irin`EFMK6ZrF8e*VS7=n3d(LLCSyoDmUv9PP1~6M`_UyKWS91-@qw!_s>oz~< zRqQ>eYe(SYz58;jAFZN~8yS7`Ez3ugV+4U-o0!)FE34E1UG813YUpO?d;asLo_;^p z6Yj6p+vG1^$tmp~iE)W5bafCcozC{3Pp`{;QGayw87{o^4L2-qf^)54Usz){vI$Z7 z`xCsjjO{|9E)H&MI#Ar--!I2aCy_`mEaMYNR_O$Xi1>-o4XT}uPC@_pLo3$bIra5P z_%Nz1FmMa}lK&wAGL0H950qMz9_MbdBY8XtDW(T8JCDI#AU}Z@Un;_{{FcnjT4K?^ zzI|;#ZGlc5@N!y&bG_T|Pl!*$6MCG#KU%vGJb`*=Z3q9i1snD5{AlQcTwYV2_~~;d z#|1v*&i)uu)2soPM6~dwU}YHDvbLMcEq)JpIgJB}dX&AI8jLGYcxw~v#)J)A|Lse~ z-9At_=x@oZGO->lr-mc$+mihlXCX*Dlm>2ZYk?p#vRseaFU+w!Fe`td+hNody~pqE zRKXdCj2ul|pj{(|A=OAM zMYhPW{%QD5n>b>B*sU!}SATe>8`sM|f6X@@GJ>ioCu&;=KfPneG48ZCM#ks&)gP?* z?nP>0tHt+1EmvZkp2XqDU(g|yD8>e`mc|0u%T_p-3D#nb>JzQZ9^7bbD}%%+ zrAehAb;e4h-WEIe)Z>#}&DS9$bNh`O#Gf9G^|Hj44L>n&q1DN%5+TD09J<-RfumG@ zoswE;J>=ps$lsEUL_(w`UcCOu(1YRgKBUDeSt8YURC)OPX;o%3VUS%`oBJX&w?SzP zinv7MIWwpH_Lg=NtJp27D>HdL&ToeuL#OI18>-@o9t8 z;weP+<_+;z@~TBPCyW3}h@@R*9vx3hu1(HasHM~HODg`UjRCB=r5z~ZExF4L!B>v! z9$ANXfPG4Qqak?y$2AlHEA59Hz6{9a%9c_7@`^X3aWM+Lt`)v2UCRBlVY^yJqin)_ zSs_*{d;KPDM9&~sn>&hnAjVP3YwX4y7+nN~H|V=jbLTggnNuzS%3B+3s0*2e{Ys*I z!^9ZpS_V?!mQ?V~*?`DyNcW)v@ju_}7Z#(SwtawP_3%o(-vZ6C`^|iZd20}so=D5U zLuGciT+GBt79sgOi28B3z+UXWJ_A-pvR=N^VmKmPD7nXmfT=x%iW+&4P?$IrpJ3F> zQQY|a)Z;Y(7I#)z2=;N*!mfb!bW0=j*~}byGsorYkhoLN+s4Yr2j$Qo*Iak7jl+#> z&#rNA#6%W8QC{e>sgpzq=(4I*yZ1L4s`T%Pl^c#_nx?Q%Goc|MK`O;4PP$>i}<_*ur;v z_>N@!8rYA7`RP32CfK%?+1wm7&GEw+$gUEMMs7@ZrrJ+#8hRvj^LAL=__L6S&qcZZznXgA$a2X(mU3Otld{w9w74_6uFGL`58BpypB z-I4+ZH1b>=$o^uV+*@@u0@VQ`?Of6d3ow$I$E_lRzr|N2<>38D5(5#RYaNLybw%M>N} zw$&+gUA(nNG&}s<>9a#gybH&;1MPmmS3;iY^?-2sy8iRa89>4jTIxL>t!L*3uT5mV zb;j*Wac?+!pdQ{dRx;NhnT=9gt+IZ95m=!4+89`t~EKik5NnR30>A67h(B`b~ zDLLD4s3oY=UQJZxCJFG#a|D>gdUl+*%WpT9%qBusKQNpCa6UEC1QmE+t-{}du7lD( zST7l=D+!3w1a~;UtHBY;-LS1~nD6-f9~MATp~bzp0N~UPzUpI*nDqBvfLl`)Nwc9# zM~pp0OFDgg`>_u|pumCD*x;p%5P;?9SZWZakv#@}h0;?69kXV`ku&Pq!W5#Ta zXN4PExK+^{z2yY_^Z4mJZ4;S=mRPiS0vRBS9cyV+w$XB7!iuf58(`cR%&Ig@oD=N& zgH^jx#Kh+JxE&6Bcx@-E%MnH`nj%hz?T?TzM_#BELnUNEv{mycm2g!s}98aIy>&_eM)X~jL*(~)+ z4cDeREQ(4y0JWZ&3lRYQQwlV5DbQm`#y85<>{?Pdj8^Qux9r+Kb5}83OS})j;4nW* zPZ8NLwsZB0R=Dt%TYT6kL0Dhk6-qK;M7m8l4%X54?WdpXoXQ0yxZo4#lG$osi#t#; zR+kE1I(1-|KI#&Y&U9%J>Wq80^V_KwfYyH>e)d<_*3=+Da}q3(@S^6HT#2TAH)dHp*1>yw8pqRnEhK}jn9m}|2-q~ zH|ZW74)^s1^fW9!WOQ`!o*2zZdk;M9o0CHwl!ChSTaiNrE^MSYz4{$v>K-z)LE4i9 zzn^VIN=%V_heCBLBA_q5C}!|m2vjwQtl$7RuQe3?M~Z}xbk07_J^fAa=^xlZL6GXz z_)niV$QmPs7RC@N?tXnjV*0P2SbGFroKjWkQ2fP0R>eB#XAJSkm;%Qj82-nw@*iN7 zBJQGW?BYWGN^@1Sva+gCb%8tBF9_v!4F}^Vtberh)P?IjkTmEuSA3&~ZuyAE(|T<3 z821zbQEQ))oR$2#-Z3_?f1epIr60PVrtGS+#GQA9UU{xNABlk71dI_k-TA_#`Cq{D z@A%zgWtV??QL79FuGoaeP}(Vr2YyOul|dkLw}Gb`)%dSd@jEm}-{=@SI{iH|1qm2@ zQ~Cf5L9JsSGKW`n+c`?jP23bAJN*N7EBS8;xKp|rANKY(8hJ1DPWAvc|KBI@cQlW$ z?Fnn|=}~^8va6}HQ}M|t<}XvlfT;>MTM>!Y|K`Oo>oQy2d-u_yrBU;tCzw=h?ozsu zaR%van&Mt^;_rm`>HhTRJhXm5P#2Q3Jpj>#n-td}IWDi|v}6i&pcy5wIm%Be`3I}r z>5gt$33c%mn<{1W+bs=8>MHiSs^jwIXWh}jR?(r^RYVw-r{fFIDV$~l{nG+*5$O^` zFtPHR_ZUlwd_sOfMp7Ym<_6#MDj_SCwQdA3+>QJk*5n)1p>Yx?UMnWqQ? zLF^GBHm;)>QalD}Fpq9+1UhNBomF18M%t}T zx!3_V(m}|!S|4UrfHndOaSAC2X%x^j1B6*=NedMa*BSia{R1@j0Jyi>bOSS=srX97{&}~iA($H(0h!AKQ3gxm@B7q=(f=>a679!;RS3v&VU;!JYW5uFHx_^lS z#B@!A5(l)&wW@ho7UfRYf#T2Ve3)>pW*5@Z2)#4n9w~w!O|WP!cCT|t}b7zlaAD)%a+W%r`eZj zs>L6+J7)$Ur!IZ!e!mwo3;VGgrNYK;*&p@`(Iq04$jYH(nuqzNrtL`EtJe)Tzc@3%7jQ(EK;UP*{G>?swSzJ*+elPJ z@@o@XjM6@{uE6<+hgIW~uzX(FtlFF!bc~A)-uL#LsXT`HmfJxwK^D4iD7^4}T1vB( z+ve!>9nA!dfx*!##;&s&9sM&v?<(l}WY-?R&fcddi>{`r#IXKIgnbgz53X3O`)pFi zY%ei2&nRLcCAO?tL;&HIb~V@(;~aYwo*~4b)2nwIptVI9O)P zs&~%KUbVLOm6GXng)|bWRS^;~ZKGTOy`$q7hUn=G9np}^c8w7B&|V~ky?_E>zCYnm z^ow=ppJnHFm<^v_wpOK?wwIpIXz*`1IvQ?kBb5FTSv9~~TPQi#@LZz@&s{}3rbYCM z43ZWP4!~_(#ifwp))sa(*~HVY`*+ayucb#Wy1mEBwv48S92jOz&G* zqxq(vOZ0QR&FS|QtsJ1|J$j9Y5IohFR0d%7$TPxMHjB!pInhh_uD{=S;HxWIY`Wsk zTs8M5_4%9{cV0OfdO3s7i2n<0yI1vQPJKSqQiSY3vqo|NJes4~pU%d&r`IO?L(_T1 zGS7Lw-9$G4IKsO0%nj=R=|ZqQd=GpWkj6hQ+agmN(AGmLAp}yPChy=S8MT1__zJsp9dtJ;XE4dyA7PXzutZ zOojHLq?U=F$c&sWp2(ubiSt^1H*E#wp`7AHe^^7B$hp&v@EifozS%u4Wf%lB>p*j+ z>))#<+*2%K^fUm0pH8H?C(glpjB@B@P2V`0582S)IrNETd|av;IvBJA46&4u}9IU3!r)*<gfT zMyO(cR3Rp$dG1kV5I1|NF@QGc-ppB6uh0|Dpy%Eb2I_Bui!OXWj@reI(JV|ppkjPa zbP}{4aRO0rz^8&&@sm%uqHYLZPOy*nmmA#H10}u7rAXRv$Wde>jIK|gSdr}O4|~U8 z^6SKURhK_E(rh+_Yz=_q_qA%=+GQbXKO5S%!!F7~%W*-_U%_1_Pb^*@4>HU5dr&v0 zo1ba?j87oRyuGB}?DjZNAcq*iHBYVpiLOkWf2^Y&+ z4_0q0zd!RFDQ8E0wHlX^{@>W#Dc=Ly(@}laV(fdQ5y*qmKRPrM-C439(vLfW=1*qB zuAXy`g6c@~18HYQtt!n=dn`MI=DB+c^K<($gh;VbNPv1_#`|50i4gm{2!Uv^hMY9> z^t}%tD@Pbi-SUT`J~GEs#v6LEPwF_$Rjg;vdw;2Qoh!;!RN?fJ8f#Y|gB)=3!|T87 zy-0;N8n?alywni}!XmOQ4@EcoKpX;rl9W$Z-JVf zJMJu3j7}bkaUtPw)UFd$?~D#~av%SKIe(%uv9HE($-93xu@V@VMq2+s)i_P=c)!JL zqUM9=iV{$T?PuSPX#mC#T;N$l$48_&m10l*@x<>9i&{;tM<~fXw<=a$Pm3?0x@wOwEPk2!zkm;#<4zO_aPdYr`wg(U!b-(hxvhro*VzfH62F1XWjmZzHfxZS6E%5-i#ZPNknvn?qu##VNImn`M>ez z|7dXj!nWT4x!7iYVL?ZRkDER}A3BWFl?e~>cpVqFvan+cGq?(Ylp@H!du97KFGf(C zpzre9_-CsE#arixiSO6IQR;Z0<$yJLTkyB$p=s8AQF8J^)4yW;WFR2}b>99_s7uYC zeygj*bD5=%7M(#F#lQv1vFyA5XsfFFwtK;_|0Xg}7LTq7EXYv)wMV*yG_?Oa8RDPc z`?Da3!0ZT~66 z|0%@(8!TALE9a!{=?`F3o3DlEK`6o_{}jP_fi?_8`0X4-DM&E%RLgeFp>C}Dci612 z`)&E*R0P|e2KIVSLPZxs_UgS3_L0~A1|a6ZtUIW%Ms`03By6d+Lj-})r-2Z=`|t4P z+kCGZb~*@N4@Vef9=y-s*`)oN@*?A`M_^jK*b8b$u)cv2Rk&71yKn3Qly-u zrk`;6qz7)AgQXi`SbuZG{LOmvTW6tGLzVp(0=#3506%9kTwqtvuI6MrS2(>;psP~dAWoj4^zp#{Ol>z&TVNiX%@FcHy0G`0rClQ;pCQIGn&WBJ zl>xriO_CW8b+AicX|)u@y+XVC3&Pr(U3q%B1q`6)EO&mENYD7Se?H4A!WIVbKvPZB zRE~eKIqH5D2w7eLzt>nXiiTTlKp+~ z;3aWS3++j}f@qUw;K6f0;y>kJ6*FO!jW@zk>!1tGrlpaAm7k~QXZuMb9CITF{?(3S zgb7vfWVY78|FrQLnX(mH-bl0qG3AMw#D##>dApADw$ead1C@OSoSaSNZPd(yZV9ki zs-8i7n9-oT&E-F;v>80w7XU(^$~q>($Xdl1`vMhtHZ=}!kLy4i^m3ps`aT^*0KbnW z@8$UA-q9A2L=ECX`#^|~LHo|U^XPFZOi78fEG|*XL&$ZzY`I5k?o$}#*pnHyeJPW zO3MvybX1rsYmrvlhA?J%ldtPW^vAC>>!LaQzyqt(sLJ+bwrBfC_%zwjG5&;V9=`{b z**Vq1W0Sd!I##RWCUZQi)gmqy{*nG-cUC9@Ww02nU}B6yOgMDJ1G7qIuUg@#l)WWd zO=M6kXopv}wl0b#C?5A-@t0$=fjE)XjkUUXV|@$ak=QzEg&#}F19NC9VrPg2dS*;a zbm=4sEBHs06dU#0Y4jvY5nlvMn3HQmGJdxLtpdaUQLKFrzQm?@NzXcX5$q`Oh+Rp= zsN^#^f|a&D2-?=#KKj%)4uU~0dUx{3tnyv&UU0%b<@CHaydT>zd2y09?AiAI*KS3LBE9kr4vunoYHpx4eD4A8X z*Z-+6nS*=RLv;_StwODRHa{X>A|DbP3?iS%W$pd55T`!}ptcqw3lAy+BSGs!{H41) zX@^%64-=aeMW*DhMyw@;Giup)jd~@w5B%I8bt^sRd*=JivMTL<{D$gM!3v9{owm>9 z$U-t;t;}1Y)uk4a<}-&QBCAd^K)jFafcW+$!O#$+7t6`T$DE{KN`Ing!nM-0}WLVO=ds_pvpA9JINe zibf0&r6s9W^nx0Xl_+~v(9FV3tOQ%z$txp@k+$NcV`p7XgG0swKbccQ!)conrh20b zZ}fl^(-NjU9c2l7H5Fk8Wt|z|K6t_)mRz)$!==}bcC2ujqo>e=4neIn1{W$&r?Z;e zEDf@rdZ?{hyfNZAS`$HZIRYAe`X8%%anXU$RwRpV&bp(iMp(AiFF0tSMsR9Bt{p=l zE$}qB?b=)!S_Suvt?I0%B6h^Duh?Kw8`WQp+RFy}o~-UW!siX{_3|c2+P%id1QPRc z*)%9`4Wb7tZHBzq)rzD?*@fx|0X4fX!30p;7dj7RHp=v{Q--z3YY-du6lgDh)b&3X z2X-!5ywn##v35CO63C>(%fRmOEL6;g)g(FcXNe`$yqpMa67`3SHJlwPJ_C$s0Dfh* z#{HE)@~c zn_!=0>zp@DM+mNHH16vo-({FgIr80iVjWZWFug;!?(&S*UjeThEiIrfZxOYJ_!{Pc z-7w$_cDheuLpfHF;!y;6FF>L?#RPk2BS9ei=bz|EctnOwLYmvg+$gfXpE63_9Ilgf$zbs zH&otx<$_Vm@umHaF)W0qGeX;?+VbHYw-wN8B_mC=yg+{)X`UHD)2aT9w-pQ4S^+qz z4MLL7$sm?2*-n85HP)ogCoTG@1#z907@5-(YK}XmXOr;7P~BTWZGGn(&?`i+qbF#& z_-N-7)(?V*kuL=iSC-s(7(-F-6KZ!p0$V34O^LPb-q_KbSmRrT=S3y~ ziFp+R;Gs2c49#pKtqjYKiVxIVOBO`kMJG>y)P8MxC*j33a+n0&7ghs_B1gb1qY~ZP zJ+xeNdWQdXvR0`+|9Cu{J+R2JUWUw}s+U8?O+LboK64*w?=%6I#>%B*^m;-i7757N zoyR~#SA93Ov&m*4k0&z|IgQhT*!S(#2v{0&{9tLc(*J8bi=NsFIbXSoHN=Zx%jul~ z5CL;IZ7+h|IDdkW+111w{WHtdGF3uSJb1)#mlv+by1w7I#0ZO9x|>KO@gZ_)d8G+r zp+VdO*&v#<$wl}Uy%7wu1j(T}n@AfCYm+19oK}|LNIx z@2(DdMuXLH?zp=V0B8nd*Jy^59 zpc5U}A=LdvUn39~JO#WE2>EyRKVfKersqoL@)|onn*yB?B;ED&X+*s!Uwo;Q;030o ze|}7j04AH=x+tWdy68K$Myg|uf966QNxyyU9|o*HdYo@`7~eGX{Lx7LQ`-3ES%AN} zhyG}uFqozI!XDy z*wmm?c#mg$>ti-9h8=3o@)7|=I8+KFN>N~iUE%sSqS=2RY$hdLjN5BRX8tGl z1-bJWN9ppP3(;5mEr#XauV1<3JhWv*$?TG!Gr^dGSh6It*P$w2K(hEP>dSwCqX5Uu zY-2rJV*2UCyoxQ#&yhAO=sGIU4rJHBWB#)tR$qIx(6}EFGn^e56V4*$hi(wXTM<*$ z8k_~$`sI%aoNAASEWP)vg0l{sE`o_GfONIj3`j^vrPW1%qc9%OMLr>*P~Mjjb7EEL zW@gv{6oyhR>4q5DXZphAJ50qg-%c0XfiGJpM7qEfCx9vr`pvi)xE~=iaBan=dd^^c zI0d#kZ!_o)TfwGa+RuqanLSZFa95-S&J#S^qC`nh$@hEJ73~yubmXT-6w2%X+z%p%gDJ1-9&QdxkyApa z7i+~YMUv<#9&k$aHy^I|;C;KP{7xOjg2x1}u?1EbOq#I!!>!Bat{{hhx}kfj%k_uq z#oq3dBn#(gm*j-3eBJPi13|5z&YL46N6u_+l2h^r%T%Q8Dq`%;qmq_K9?jlG&hhMa ztK=X491hh=p|yu2P!9C?goEC0MHJb1pd?!1plfwrtB!Jn$@1=NANITv-Hl2(4MW(z z!6mz+_Y69jQZF{d-(d4n8Ko8hGf->^?NI5bm@4`LfM29*hw&jtGU5dJPbGh5ypl-e?6+Y{Iv4XLf<+VXaJ@A(B$!OJe-xW5cnD!JAuIR7!pIz9icqR{+2GE2>H zXL_NgQq%Wf>f$Bs+u=zR>SDiCfAS1eQucl&3>iy(g(srzN?Bm+SyQSg3~$nDwol(g3&M}k9LsNN#3GY&a35@U;-mFK4^-l| zG#rpMrvf!2``dbbZ_pzvBOzF6mo*gvTMSj*EE0k*N*f7el_hn^AScjwXgO>bNGv(} zT-CDeoCYj1YUpZDQZy&NZB?W6%}>bm?3yxZ`|{A=L0^s+z4nP9p?%MxTPybvlzhw1 z_-PNq{StF|#%zV;4No?Tq`_;bA)BH{bkidZq)kiKDWT-TBNW&cpTM&Ht69FqNk;YycQ5yduoR`L1XalrZG8QEWRU@hz$A2{r7gebjAgB7y1xLWZxxR{tW z7aW|RYRW|y-9CRm$$It9Bj2|rnWtBDA|aL~u|I4+BshPLy{G&G1QBHye*;5W;yu&V zpoc0wt_~$JX;_NYf@JuhC(=QbA)YoUrOay4~UO$QJd8Mn*y*>Ye zK7S>*!+`{{MceDupon|y>M*M6u9gN3zwER_!OW8uFrme*A|Xm8X{HCAXTlkp7z@M6 zY?7h=L1Qf;`L^ZsKK!e+t<;*tX_u_f;7$BZL%#U4ZUnw9XbFi9pL=|yX_@h?q@>Ir zu`BkhSSu+BY`Aw;8hiV^w!W^w{0V)6fB+k#$#J0pJZT(a7;{Ekg>1vRmfWnVZx>??v-MG1STeY(L_k#mtQ(0G>9yHaQ zT#3+dGBeC`s^nRf4Y3!T`1!$=S=#l({6#_EbF6OGsG`!NlLo!QdOimS@05xZYTsJM z{!Y5BCm2FSsVgQ#*y#jDLUSFTgan$;hQGCKsMO;$Hl~|9*uI3U8C{xVsXrUlb^qck zU}$^^1NL!A8$#@66z4^+$l)<KUO#kPT+n^j#Bm&e zNbcYl)Eq55*X#)DXTw-4!^uMD7=>~GdeR`PF=BLfK<$|#H~omH zcmlgP&HK~4r3@>nFriNCDP;GGR~ioRkcET<-d%c*FHYNm>wW&yrPwQ}0`hG>S26_r zx_SAwd#b}0<|s|%kLql+UG+CJw15qwSQ-7D8~goIM!+WDXNAH|g%T3e1ooBajTE)I zq|WsyicGUDIyr1&d%lN$&iZyS4c>iByX2tN$s}w3be;(jSW{i)zC8sx4wLg2G-CA( z@2M$U>6;Aa4#*eC_>f9s`>hRCD>qHgUNTNjQp8jS9IEe(0paJO+U?s>9X_7=a@~q% z8m6i_X_QQXju$PK8dW}0{e;ci+d+{SO1s-NE|r!2sF9hkd=o91PHr)DV}F@5)@&k3 zNlc44aQp&CNl_a@BA(ma8IRgPE@^6a-Al31Yr8Y-q^(QzsU$zn*;a0*MhF@M95MwhL4`IUNoL5#ws6FRHf{g}621`YKh>Dd< zqajK!(-tuVar^qDXp^ht(zK{MElnnE$xyvZG^&hUJB8#IJ%cCQ%E~@+paS(XjSL@z z*W6pu6AMr`l4=u3e^=8fe1YoAFEd2O5T6yA&wADgwo4Vrgk-h~&ohz+-9qQ0)`^nN z8CqD$#LtJgigs3~b7R&8ScC*i4-8(PncMk-8*|*J7Z$qdHBYx(Eap9PNJIYk$EyOH zuT+h9`D_=saiPp<)Q*cz{+ioSRXZ{3d5d%EVwt1_TCwYrM%Da?bh|ZODJxVyckD#`d-N#v zqisb9rcZrxl{J)<6kmG5^ZXYO-zZzp2ndLM&2cj4B37qar+Yf+*9f+o8`4*P&N-~v zRAZ(dnxJKMee&n6)bw}D3oe$1i|+cJbig{KG;i$(2{k_AVIpE*;9ZKO(UbBm+Zolh zQv=T+NUm!($x4jB0So~ALAj)txqi+`W3HD`&byY+iC$=Xo@B<)p=$h6=Q5DwY|%pcb;``{pY=(u%?E$JEL&3)k(+ckyJB7sS`V>_bHgN zq_ivbVw7xIml&ZNB9o*f!QDh*v9DrwTPQX=c?sEa!El2QLZZS}-XvLz&c72&oHD-6 z;IWf?Dcm|F)@6R%nVJ5Ydv!`CwucXs)mFuO$;+8v29Flt?dGY&_MKna+nB* z4=}NvS27A6wjJ76TChCk-e7)6@EAMP?n{oV*(Zs6oio)**5oO>)s;c&$LizGHvFZ7^~-Qj zBxF;Tnc)z%qZ&Jw({#}>zhkma!!I|jG&mSjZDr8*y~Z6LN{)25h7s(v%@}(y?_c1u-p))+8j-Yr<=t2rzF2*j z7Nzf|&Aw!L0CJy5y6G^6_=QiXNk~G1+0U&SITA?nL27K&2Vt?Pw*mrw)p98qVu2!Y zV|rpbZu4uqeK*}7T#JuuG%NJdpY=?J(t791;G4tGj0|n|F%m0-_M8!vH^HXsXuA;@ zy{-nmLEFH_UMgZQ;1wv25Ka4E@4$sM&ueNN48bzeBvNa24V#5_CpVz95rMqvg>Y-N zjr}$4&4i)#wLM2%EaKCISLZ^-m*g<2#4%8XOm`!d)x{aLp9kP3<$5S< SLCHj+PHE_z$U1)U=Klc-@)}hD literal 0 HcmV?d00001 diff --git a/msctLib/display.py b/msctLib/display.py index 7832026..039e3e5 100644 --- a/msctLib/display.py +++ b/msctLib/display.py @@ -8,6 +8,8 @@ import tkinter as tk import tkinter.simpledialog as sdialog import tkinter.filedialog as fdialog +from tkinter import * + root = tk.Tk() class disp: @@ -21,9 +23,22 @@ class disp: 'title' : self.setTitle, 'geometry': self.setGeometry, 'iconbitmap': self.setIcon, + 'menu': self.setMenu, + 'widget': self.setWidget, } '''注:此处为引导传参,若传参错误且debug模式关闭则不会有任何反馈''' + for func,args in kwgs: + if func in self.FUNCLIST.keys(): + if type(args) == type([]): + self.FUNCLIST[func](*args) + if type(args) == type({}): + self.FUNCLIST[func](**args) + else: + self.FUNCLIST[func](args) + elif debug: + raise KeyError(f'无法定位函数{func}') + def setTitle(self,title:str = '') -> None: self.root.title = title @@ -44,4 +59,15 @@ class disp: else: menu.add_separator() mainMenuBar.add_cascade(label=menuName,menu=menu) - menus.append(menu) \ No newline at end of file + menus.append(menu) + + def setWidget(self,**kwgs) -> None: + pass + + + + +class ProgressBar: + + def __init__(self,root) -> None: + pass \ No newline at end of file diff --git a/msctLib/function.py b/msctLib/function.py new file mode 100644 index 0000000..88cafaa --- /dev/null +++ b/msctLib/function.py @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +'''音·创的内置功能库 +:若要加入其他功能,详见: +:开发说明|指南''' + + diff --git a/msctLib/开发说明兼指南.md b/msctLib/开发说明兼指南.md index 13bb56b..57fb0e8 100644 --- a/msctLib/开发说明兼指南.md +++ b/msctLib/开发说明兼指南.md @@ -25,7 +25,7 @@ functions.py中会调取./addon/目录下的全部功能文件,这些功能文 例如: ```python { - 'version': '0.0.1' # version指的是 + 'version': '0.0.1', # version指的是当前配置格式的版本 'title': "音·创", 'geometry': '1200x900', 'iconbitmap': ('./resources/musicreater.ico', './resources/musicreater.ico'), @@ -35,7 +35,51 @@ functions.py中会调取./addon/目录下的全部功能文件,这些功能文 '打开': lambda : x, }, }, + 'widget': { #对窗口部件又详细说明 + 'wordview':{ + 'text':'言·论', + 'bg':'black', + 'fg':'white' + }, + 'settingbox':{}, #后文详细说明 + 'tracklist':{}, + 'operation':{}, + 'map':{}, + }, } ``` - 函数 1. `setMenu`对菜单的基础设定 + ```python + { + 菜单名 : { + 选项名 : 选项函数 + } + } + ``` + 注: + `菜单名` : `str` 显示在菜单上的字符串 + `选项名` : `str` 显示在菜单选项上的字符串 + `选项函数` : `function` 菜单调取的函数(无返回值,无入参) + 2. `setWidget`对窗口部件的放置 + ```python + wordview:dict = { + 'text':'言·论', + 'bg':'black', + 'fg':'white' + }, + settingbox:{}, #后文详细说明 + tracklist:{}, + operation:{}, + map:{}, + ``` + 注: + + + + + + + + +