70 lines
2.0 KiB
Python
70 lines
2.0 KiB
Python
import os
|
|
import sys
|
|
from functools import partial
|
|
from kivyblocks.dg import DataGrid
|
|
from kivy.app import App
|
|
from kivy.clock import Clock
|
|
from appPublic.folderUtils import ProgramPath
|
|
from appPublic.jsonConfig import getConfig
|
|
from appPublic.timecost import TimeCost
|
|
from kivyblocks.blocksapp import appBlocksHack
|
|
|
|
if __name__ == '__main__':
|
|
pp = ProgramPath()
|
|
workdir = pp
|
|
if len(sys.argv) > 1:
|
|
workdir = sys.argv[1]
|
|
print('ProgramPath=',pp,'workdir=',workdir)
|
|
|
|
config = getConfig(workdir,NS={'workdir':workdir,'ProgramPath':pp})
|
|
|
|
desc = {
|
|
"id":"playlist_grid",
|
|
"widgettype":"DataGrid",
|
|
"options":{
|
|
"dataloader":{
|
|
"dataurl":"http://ktv.bsppo.com:10081/ktvplayer/playlist.dspy",
|
|
"params":{}
|
|
},
|
|
"fields":[
|
|
{
|
|
"name":"plid",
|
|
"label":"plid",
|
|
"uitype":"str"
|
|
},
|
|
{
|
|
"name":"userid",
|
|
"label":"Userid",
|
|
"uitype":"str"
|
|
},
|
|
{
|
|
"name":"plname",
|
|
"label":"plname",
|
|
"uitype":"str"
|
|
},
|
|
{
|
|
"name":"max_position",
|
|
"label":"max_position",
|
|
"uitype":"long"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
|
|
class MyApp(App):
|
|
def build(self):
|
|
with TimeCost('create widget') as tc:
|
|
dg = DataGrid(**desc['options'])
|
|
dg.loadData()
|
|
return dg
|
|
|
|
def on_close(self,*args,**kwargs):
|
|
return True
|
|
|
|
myapp = MyApp()
|
|
appBlocksHack(myapp)
|
|
myapp.run()
|
|
tc = TimeCost('show')
|
|
tc.show()
|
|
|