本文整理汇总了Python中direct.gui.DirectGui.DirectScrolledList.hide方法的典型用法代码示例。如果您正苦于以下问题:Python DirectScrolledList.hide方法的具体用法?Python DirectScrolledList.hide怎么用?Python DirectScrolledList.hide使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类direct.gui.DirectGui.DirectScrolledList
的用法示例。
在下文中一共展示了DirectScrolledList.hide方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: MainMenu
# 需要导入模块: from direct.gui.DirectGui import DirectScrolledList [as 别名]
# 或者: from direct.gui.DirectGui.DirectScrolledList import hide [as 别名]
#.........这里部分代码省略.........
for fruit in ['apple', 'pear', 'banana', 'orange', 'cake', 'chocolate']:
l = DirectLabel(text = fruit, text_scale = 0.1)
self.channels.addItem(l)
# need to add the chat stuff
# i guess have like a chat manager which will hold an array of 'chat_instances'
# and the chat manager can sort out which is displayed and which channel the text is sent from/received to
# a bit more thinking needs to be done i guess
# can discuss sometime (not really that important now :P)
# also i guess the layout and shit will need to be sorted (for whoever is doing the designing)
# current games list (need to implement this)
# it should send a query to the master server to get the current list (just ip's atmo i guess)
# options shit aswell needs to be sorted
# maybe just an overlay or something
# functionality for the host button (popup an overlay that will be able to set options and then 'start_game' button
# then should auto connect and go to lobby (will be same as for all clients, except have a couple of different buttons i guess)
# close game instead of disconnect, start game instead of ready (greyed until all others are ready), kick button i suppose
# once the options are set the 'server_inst' should be started on the local computer (which will broadcast to master server, once host can successfully connect)
# then game client will move to pregame state (connect to the server, and wait for others and ready)
else:
self.entry = DirectEntry(
focusInCommand = self.clearText,
frameSize = (-3, 3, -.5, 1),
initialText = self.ip,
parent = self.buttons[0],
pos = (0, -0.6, -1.5),
text_align = TextNode.ACenter,
)
self.hide()
def refreshStart(self):
self.refreshButton["state"] = DGG.DISABLED
if self.showbase.authCon.getConnected():
self.servers = []
self.showbase.authCon.sendData('serverQuery')
self.showbase.taskMgr.doMethodLater(0.25, self.queryServers, 'Server Query')
def queryServers(self, task):
finished = False
temp = self.showbase.authCon.getData()
for package in temp:
if len(package) == 2:
# Handle Server Query
if package[0] == 'server':
self.servers.append(package[1])
print package[1]
elif package[0] == 'final':
self.refreshButton["state"] = DGG.NORMAL
finished = True
else:
self.showbase.authCon.passData(package)
if finished:
return task.done
return task.cont
def joinChat(self):
pass
# Let the client mini auth with the lobby server(lobby_loop) by "Logging into the chat"
# Since everything will be in the main menu? like a main chat window.. something similar to HoN i guess?
# When the player opens the Join game by button, a list will be send from the lobby server telling it what games are active.
# Then the player picks one and it connects via the host name/ip or whatever.
示例2: Highscore
# 需要导入模块: from direct.gui.DirectGui import DirectScrolledList [as 别名]
# 或者: from direct.gui.DirectGui.DirectScrolledList import hide [as 别名]
class Highscore():
def __init__(self):
home = os.path.expanduser("~")
quickJNRDir = os.path.join(home, ".quickShooter")
if not os.path.exists(quickJNRDir): os.makedirs(quickJNRDir)
self.highscorefile = os.path.join(quickJNRDir, "highscore.txt")
self.highscore = []
if not os.path.exists(self.highscorefile):
with open(self.highscorefile, "w") as f:
f.write("""Foxy;4000
Wolf;3500
Coon;3000
Kitty;2020
Ferret;2000
Lynx;1700
Lion;1280
Tiger;800
Birdy;450
Fishy;250""")
with open(self.highscorefile, "r+") as f:
data = f.readlines()
for line in data:
name = line.split(";")[0]
pts = line.split(";")[1]
self.highscore.append([name, pts])
self.lstHighscore = DirectScrolledList(
frameSize = (-1, 1, -0.6, 0.6),
frameColor = (0,0,0,0.5),
pos = (0, 0, 0),
numItemsVisible = 10,
itemMakeFunction = self.__makeListItem,
itemFrame_frameSize = (-0.9, 0.9, 0.0, -1),
itemFrame_color = (1, 1, 1, 0),
itemFrame_pos = (0, 0, 0.5))
self.btnBack = DirectButton(
# size of the button
scale = (0.15, 0.15, 0.15),
text = "Back",
# set no relief
relief = None,
frameColor = (0,0,0,0),
# No sink in when press
pressEffect = False,
# position on the window
pos = (0.2, 0, 0.1),
# the event which is thrown on clickSound
command = self.btnBack_Click,
# sounds that should be played
rolloverSound = None,
clickSound = None)
self.btnBack.setTransparency(1)
self.btnBack.reparentTo(base.a2dBottomLeft)
self.refreshList()
self.hide()
def show(self):
self.lstHighscore.show()
self.btnBack.show()
def hide(self):
self.lstHighscore.hide()
self.btnBack.hide()
def writeHighscore(self):
self.__sortHigscore()
with open(self.highscorefile, "w") as f:
for entry in self.highscore:
f.write("{0};{1}".format(entry[0], entry[1]))
def refreshList(self):
self.__sortHigscore()
self.lstHighscore.removeAllItems()
for entry in self.highscore:
self.lstHighscore.addItem("{0};{1}".format(entry[0], entry[1]))
def __makeListItem(self, highscoreItem, stuff, morestuff):
name = highscoreItem.split(";")[0]
pts = highscoreItem.split(";")[1]
# left
l = -0.9
# right
r = 0.9
itemFrame = DirectFrame(
frameColor=(1, 1, 1, 0.5),
frameSize=(l, r, -0.1, 0),
relief=DGG.SUNKEN,
borderWidth=(0.01, 0.01),
pos=(0, 0, 0))
lblName = DirectLabel(
pos=(l + 0.01, 0, -0.07),
text=name,
#.........这里部分代码省略.........
示例3: GroupTrackerPage
# 需要导入模块: from direct.gui.DirectGui import DirectScrolledList [as 别名]
# 或者: from direct.gui.DirectGui.DirectScrolledList import hide [as 别名]
#.........这里部分代码省略.........
pos=(0.45, 0, 0.4)
)
self.statusMessage = DirectLabel(parent=self, text='', text_scale=0.060, text_align=TextNode.ACenter, text_wordwrap=5, relief=None, pos=(0.45,0,0.1))
# Group Image:
self.groupIcon = DirectButton(parent=self, relief=None, state=DGG.DISABLED, image=None, image_scale=(0.35, 1, 0.35), image_color=Vec4(1.0, 1.0, 1.0, 0.75), pos=(0.45, 10, -0.45), command=self.doNothing)
# Group Toggle:
self.wantGroupToggle = DirectButton(parent=self, relief=None, image=(guiButton.find('**/QuitBtn_UP'), guiButton.find('**/QuitBtn_DN'), guiButton.find('**/QuitBtn_RLVR')), image_scale=(0.7, 1, 1), text='', text_scale=0.052, text_pos=(0, -0.02), pos=(0.2, 0, -0.65), command=self.toggleWantGroup)
self.updateWantGroupButton()
# Loading possible group icons
suitIcons = loader.loadModel('phase_3/models/gui/cog_icons')
bossbotIcon = suitIcons.find('**/CorpIcon')
bossbotIcon.setColor(SUIT_ICON_COLORS[0])
self.images.append(bossbotIcon)
lawbotIcon = suitIcons.find('**/LegalIcon')
lawbotIcon.setColor(SUIT_ICON_COLORS[1])
self.images.append(lawbotIcon)
cashbotIcon = suitIcons.find('**/MoneyIcon')
cashbotIcon.setColor(SUIT_ICON_COLORS[2])
self.images.append(cashbotIcon)
sellbotIcon = suitIcons.find('**/SalesIcon')
sellbotIcon.setColor(SUIT_ICON_COLORS[3])
self.images.append(sellbotIcon)
# Clean up
self.clearGroupInfo()
self.statusMessage.hide()
suitIcons.removeNode()
self.gui.removeNode()
guiButton.removeNode()
self.accept('GroupTrackerResponse', self.updatePage)
def unload(self):
self.scrollList.destroy()
self.groupInfoDistrict.destroy()
self.playerList.destroy()
self.groupInfoTitle.destroy()
self.groupIcon.destroy()
self.wantGroupToggle.destroy()
for widget in self.playerWidgets:
widget.destroy()
for widget in self.groupWidgets:
widget.destroy()
self.playerWidgets = []
del self.scrollList
del self.groupInfoDistrict
del self.playerList
del self.groupInfoTitle
del self.groupIcon
del self.wantGroupToggle
ShtikerPage.ShtikerPage.unload(self)
def enter(self):
ShtikerPage.ShtikerPage.enter(self)
self.setGroups([]) # CLEAR IT ALL
self.setPlayers() # CLEAR IT ALL