本文整理汇总了Python中pyjamas.ui.Grid.Grid.getRowCount方法的典型用法代码示例。如果您正苦于以下问题:Python Grid.getRowCount方法的具体用法?Python Grid.getRowCount怎么用?Python Grid.getRowCount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pyjamas.ui.Grid.Grid
的用法示例。
在下文中一共展示了Grid.getRowCount方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: DynaTableWidget
# 需要导入模块: from pyjamas.ui.Grid import Grid [as 别名]
# 或者: from pyjamas.ui.Grid.Grid import getRowCount [as 别名]
class DynaTableWidget(Composite):
def __init__(self, provider, columns, columnStyles, rowCount):
Composite.__init__(self)
self.acceptor = RowDataAcceptorImpl(self)
self.outer = DockPanel()
self.startRow = 0
self.grid = Grid()
self.navbar = NavBar(self)
self.provider = provider
self.initWidget(self.outer)
self.grid.setStyleName("table")
self.outer.add(self.navbar, DockPanel.NORTH)
self.outer.add(self.grid, DockPanel.CENTER)
self.initTable(columns, columnStyles, rowCount)
self.setStyleName("DynaTable-DynaTableWidget")
def initTable(self, columns, columnStyles, rowCount):
self.grid.resize(rowCount + 1, len(columns))
for i in range(len(columns)):
self.grid.setText(0, i, columns[i])
if columnStyles:
self.grid.cellFormatter.setStyleName(0, i, columnStyles[i] + "header")
def setStatusText(self, text):
self.navbar.status.setText(text)
def clearStatusText(self, text):
self.navbar.status.setHTML(" ")
def refresh(self):
self.navbar.gotoFirst.setEnabled(False)
self.navbar.gotoPrev.setEnabled(False)
self.navbar.gotoNext.setEnabled(False)
self.setStatusText("Please wait...")
self.provider.updateRowData(self.startRow, self.grid.getRowCount() - 1, self.acceptor)
def setRowCount(self, rows):
self.grid.resizeRows(rows)
def getDataRowCount(self):
return self.grid.getRowCount() - 1
示例2: createResultGrid
# 需要导入模块: from pyjamas.ui.Grid import Grid [as 别名]
# 或者: from pyjamas.ui.Grid.Grid import getRowCount [as 别名]
def createResultGrid( self, gridName ) :
label=HTML('<br><b>'+gridName+'</b>')
grid=Grid(17,17)
# Create the column and row headers
for index in range( 1, grid.getColumnCount() ) :
grid.setWidget( 0, index, HTML('Cx%X'%(index-1)) )
for index in range( 1, grid.getRowCount() ) :
grid.setWidget( index, 0, HTML('C%Xx'%(index-1)) )
self.mainPanel.add(label)
self.mainPanel.add(grid)
self.resultLabels[gridName]=label
self.resultGrids[gridName]=grid
示例3: Form
# 需要导入模块: from pyjamas.ui.Grid import Grid [as 别名]
# 或者: from pyjamas.ui.Grid.Grid import getRowCount [as 别名]
class Form(FormPanel):
def __init__(self, svc, **kwargs):
self.describe_listeners = []
if kwargs.has_key('listener'):
listener = kwargs.pop('listener')
self.addDescribeListener(listener)
if kwargs.has_key('data'):
data = kwargs.pop('data')
else:
data = None
FormPanel.__init__(self, **kwargs)
self.svc = svc
self.grid = Grid()
self.grid.resize(0, 3)
self.add(self.grid)
self.describer = FormDescribeGrid(self)
self.saver = FormSaveGrid(self)
self.getter = FormGetGrid(self)
self.formsetup(data)
def addDescribeListener(self, l):
self.describe_listeners.append(l)
def add_widget(self, description, widget):
""" adds a widget, with error rows interspersed
"""
num_rows = self.grid.getRowCount()
self.grid.resize((num_rows+1), 3)
self.grid.setHTML(num_rows, 0, description)
self.grid.setWidget(num_rows, 1, widget)
def get(self, **kwargs):
writebr(repr(kwargs))
self.svc({}, {'get': kwargs}, self.getter)
def save(self, data=None):
self.clear_errors()
if data is None:
data = self.getValue()
self.data = data
writebr(repr(self.data))
self.svc(data, {'save': None}, self.saver)
def save_respond(self, response):
if not response['success']:
errors = response['errors']
self.set_errors(errors)
for l in self.describe_listeners:
l.onErrors(self, errors)
return
for l in self.describe_listeners:
l.onSaveDone(self, response)
def formsetup(self, data=None):
if data is None:
data = {}
self.data = data
self.svc(data, {'describe': None}, self.describer)
def clear_errors(self):
for idx, fname in enumerate(self.fields):
self.grid.setHTML(idx, 2, None)
def set_errors(self, errors):
offsets = {}
for idx, fname in enumerate(self.fields):
offsets[fname] = idx
for k, err in errors.items():
err = "<br />".join(err)
idx = offsets[k]
self.grid.setHTML(idx, 2, err)
def update_values(self, data = None):
if data is not None:
self.data = data
for idx, fname in enumerate(self.fields):
val = None
if self.data.has_key(fname):
val = self.data[fname]
w = self.grid.getWidget(idx, 1)
w.setValue(val)
def do_get(self, response):
fields = response.get('instance', None)
if fields:
self.update_values(fields)
for l in self.describe_listeners:
l.onRetrieveDone(self, fields)
#.........这里部分代码省略.........
示例4: Photos
# 需要导入模块: from pyjamas.ui.Grid import Grid [as 别名]
# 或者: from pyjamas.ui.Grid.Grid import getRowCount [as 别名]
#.........这里部分代码省略.........
gridcols = self.grid.getColumnCount()
self.pos =row+col+(row*(gridcols-1))
photo = self.photos[self.pos]
self.vp.clear()
self.fullsize = HTML('<img src="' + photo["full"] + '"/>')
hp = HorizontalPanel()
hp.add(self.up)
hp.add(self.prev)
hp.add(self.next)
hp.setSpacing(8)
self.vp.add(hp)
self.vp.add(self.fullsize)
def onClick(self, sender):
if sender == self.IDButton:
self.userid = self.IDBox.getText()
if self.userid == "" or self.userid.isdigit():
return
self.drill = 0
self.album_url = "http://picasaweb.google.com/data/feed/base/user/" + self.userid + "?alt=json-in-script&kind=album&hl=en_US&callback=restCb"
self.grid.clear()
self.doRESTQuery(self.album_url, self.timer)
else:
if self.drill == 2:
if sender == self.up:
self.drill=1
self.vp.clear()
self.vp.add(self.up)
self.vp.add(self.grid)
self.fillGrid(self.photos, "photos")
else:
if sender == self.next:
if self.pos >= len(self.photos):
return
self.pos +=1
elif sender == self.prev:
if self.pos < 1:
return
self.pos -=1
photo = self.photos[self.pos]
self.fullsize.setHTML('<img src="' + photo["full"] + '"/>')
elif self.drill == 1:
self.drill=0
self.vp.clear()
self.vp.add(self.IDPanel)
self.vp.add(self.disclosure)
self.vp.add(self.grid)
self.fillGrid(self.albums, "albums")
def onTimer(self, timer):
receiver = JS("$wnd.receiver")
if receiver == 'wait':
self.timer.schedule(1000)
return
JS("$wnd.receiver = 'wait'")
if self.drill == 0:
self.parseAlbums(receiver)
self.fillGrid(self.albums, "albums")
elif self.drill == 1:
self.parsePhotos(receiver)
self.fillGrid(self.photos, "photos")
def fillGrid(self, items, type):
self.grid.clear()
cols = self.grid.getColumnCount()
self.grid.resizeRows((len(items)/cols)+1)
rows = self.grid.getRowCount()
for i in range(len(items)):
vp = VerticalPanel()
if type == 'photos':
vp.add(items[i]['thumb'])
else:
vp.add(items[i]['thumb'])
vp.add(items[i]['title'])
self.grid.setWidget(int(i/cols), i%cols, vp)
def parsePhotos(self, items):
photo_list = JSONParser().jsObjectToPyObject(items)
self.photos = []
for i in range(len(photo_list)):
index = "%s" % i
aphoto = {}
aphoto['thumb'] = HTML('<img src="' + photo_list[index]["media$group"]["media$thumbnail"]["1"]["url"] + '"/>')
aphoto['full'] = photo_list[index]["media$group"]["media$content"]["0"]["url"]
self.photos.append(aphoto)
def parseAlbums(self, items):
album_list = JSONParser().jsObjectToPyObject(items)
self.albums = []
for i in range(len(album_list)):
index = "%s" % i
analbum = {}
analbum['title'] = HTML(album_list[index]["title"]["$t"])
analbum['thumb'] = HTML('<img src="' + album_list[index]["media$group"]["media$thumbnail"]["0"]["url"] + '"/>')
url = album_list[index]["id"]["$t"]
analbum['id'] = url.split('albumid/')[1].split('?alt')[0]
self.albums.append(analbum)