
Cerere chestie /n
Cod: Selectaţi tot
WJ_MULTI_TEXTLINE Edit: Nu am văzut screen din topic
Ultima oară modificat 28 Dec 2019, 13:03 de către ZeNu, modificat 1 dată în total.
- Athero
-

- Mesaje: 3936
- Membru din: 17 Aug 2017, 00:08
- Aprecieri: 559
- Mulţumiri: 7142
- Discord: Copiază ID
Cred ca te referi la board ul ala de pe N, cand scrii pe N, e bara aia lunga.
Inlocuiti toate functia din uitip.py cu cea de jos.
Inlocuiti toate functia din uitip.py cu cea de jos.
class TipBoard(ui.Bar):
SCROLL_WAIT_TIME = 3.0
TIP_DURATION = 2.0
FONT_HEIGHT = 15
LINE_HEIGHT = FONT_HEIGHT + 5
STEP_HEIGHT = LINE_HEIGHT + 5
SCREEN_WIDTH = wndMgr.GetScreenWidth()
def __init__(self):
ui.Bar.__init__(self)
self.AddFlag("not_pick")
self.tipList = []
self.curPos = 0
self.dstPos = 0
self.nextScrollTime = 0
self.width = 370
self.SetPosition(0, 100)
self.SetSize(self.SCREEN_WIDTH, 35)
self.SetColor(grp.GenerateColor(0.0, 0.0, 0.0, 0.5))
self.SetWindowHorizontalAlignCenter()
self.__CreateTextBar()
def __del__(self):
ui.Bar.__del__(self)
def __CreateTextBar(self):
x, y = self.GetGlobalPosition()
self.textBar = BigTextBar(self.SCREEN_WIDTH*2, 300, self.FONT_HEIGHT)
self.textBar.SetParent(self)
self.textBar.SetPosition(6, 8)
self.textBar.SetTextColor(242, 231, 193)
self.textBar.SetClipRect(0, y, self.SCREEN_WIDTH, y+8+self.STEP_HEIGHT)
self.textBar.Show()
def __CleanOldTip(self):
leaveList = []
for tip in self.tipList:
madeTime = tip[0]
if app.GetTime() - madeTime > self.TIP_DURATION:
pass
else:
leaveList.append(tip)
self.tipList = leaveList
if not leaveList:
self.textBar.ClearBar()
self.Hide()
return
self.__RefreshBoard()
def __RefreshBoard(self):
self.textBar.ClearBar()
index = 0
for tip in self.tipList:
text = tip[1]
(text_width, text_height) = self.textBar.GetTextExtent(text)
self.textBar.TextOut((wndMgr.GetScreenWidth()-text_width)/2, index*self.STEP_HEIGHT, text)
index += 1
def SetTip(self, text):
if not app.IsVisibleNotice():
return
curTime = app.GetTime()
self.tipList.append((curTime, text))
self.__RefreshBoard()
self.nextScrollTime = app.GetTime() + 1.0
if not self.IsShow():
self.curPos = self.STEP_HEIGHT
self.dstPos = 0
self.textBar.SetPosition(3, 8 + self.curPos)
self.Show()
def OnUpdate(self):
if not self.tipList:
self.Hide()
return
if app.GetTime() > self.nextScrollTime:
self.nextScrollTime = app.GetTime() + self.SCROLL_WAIT_TIME
self.dstPos = self.curPos + self.STEP_HEIGHT
if self.dstPos > self.curPos:
self.curPos += 1
self.textBar.SetPosition(3, 8 - self.curPos)
if self.curPos > len(self.tipList)*self.STEP_HEIGHT:
self.curPos = -self.STEP_HEIGHT
self.dstPos = -self.STEP_HEIGHT
self.__CleanOldTip()inactiv , arhivat !
-
- Informaţie
-
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 7 vizitatori

