Register for your free account! | Forgot your password?

Go Back   elitepvpers > Metin2 > Metin2 PServer - Discussions / Questions
You last visited: Today at 19:55

  • Please register to post and access all features, it's quick, easy and FREE!


[Client/Python]ListBoxEx Itemskalierung

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jun 2015
Posts: 47
Received Thanks: 9
[Client/Python]ListBoxEx Itemskalierung

Hallo Leute,

ich habe ein kleines Problem beim Hinzufügen von Items in einer ListBoxEx über Python.

Ich versuche im Moment ein Thinboard hinzuzufügen, das klappt auch ganz gut.
Allerdings habe ich das Problem das die Boxen zu klein sind.

Hier mal der Codes der das ThinBoard hinzufügt:
Code:
def btnm1_func(self):
	self.cmp = Component()
		
	for x in range(1, 5):
		t = x*50
		self.b = self.ItemBox(t)
		self.list_ItemBox.AppendItem(self.b)
			
		
def ItemBox(self, x):
	self.itm = self.cmp.ThinBoard(self.list_ItemBox, FALSE, 168, x, 350, 50, FALSE)
	self.txt = self.cmp.TextLine(self.itm, 'text '+str(x), 2, 2, self.comp.RGB(255, 255, 255))
	return self.itm
hier der Codes der Funktion Component():
Code:
def ThinBoard(self, parent, moveable, x, y, width, heigh, center):
	thin = ui.ThinBoard()
	if parent != None:
		thin.SetParent(parent)
	if moveable == TRUE:
		thin.AddFlag('movable')
		thin.AddFlag('float')
	thin.SetSize(width, heigh)
	thin.SetPosition(x, y)
	if center == TRUE:
		thin.SetCenterPosition()
	thin.Show()
	return thin
Wenn ich nun aber in der Board auf den Button klicke, also die Items hinzufügen möchte, sieht das so auß:


Das Board in das ich das ThinBoard setzen will ist groß genug.
Hat da einer ne Idee wiso das so ist oder wie ich es beheben kann?

MfG Xer0x



_Xer0x_ is offline  
Old 03/06/2016, 12:55   #2
 
elite*gold: 35
Join Date: Aug 2014
Posts: 335
Received Thanks: 265
Code:
	for x in range(1, 5):
		t = x*50
		self.b = self.ItemBox(x)
		self.list_ItemBox.AppendItem(self.b)
Du willst hier sicherlich die Variable t verwenden, nicht x


.Various is offline  
Old 03/06/2016, 13:52   #3
 
elite*gold: 0
Join Date: Jun 2015
Posts: 47
Received Thanks: 9
@: Da hast du Recht ich möchte die Variable "t" benutzen, hab das nun geändert.
Das Problem besteht leider weiterhin.

MfG Xer0x
_Xer0x_ is offline  
Old 03/06/2016, 16:51   #4
 
elite*gold: 35
Join Date: Aug 2014
Posts: 335
Received Thanks: 265
Quote:
Originally Posted by _Xer0x_ View Post
@: Da hast du Recht ich möchte die Variable "t" benutzen, hab das nun geändert.
Das Problem besteht leider weiterhin.

MfG Xer0x
Naja, hast du denn auch die Funktion AppendItem abgeändert?


.Various is offline  
Old 03/06/2016, 17:51   #5
 
elite*gold: 0
Join Date: Jun 2015
Posts: 47
Received Thanks: 9
Was genau hätte ich denn ändern sollen ?

MfG Xer0x
_Xer0x_ is offline  
Old 03/06/2016, 17:56   #6
 
elite*gold: 35
Join Date: Aug 2014
Posts: 335
Received Thanks: 265
Code:
	def AppendItem(self, newItem):
		newItem.SetParent(self)
		newItem.SetSize(self.itemWidth, self.itemHeight)

		pos=len(self.itemList)
		if self.__IsInViewRange(pos):
			(x, y)=self.GetItemViewCoord(pos, newItem.GetWidth())
			newItem.SetPosition(x, y)
			newItem.Show()
		else:
			newItem.Hide()

		self.itemList.append(newItem)
Naja, du siehst ja, dass die Positionen etc. dort gesetzt werden
.Various is offline  
Old 03/06/2016, 18:02   #7
 
elite*gold: 0
Join Date: Jun 2015
Posts: 47
Received Thanks: 9
Ja schon aber mein Problem is ja nicht die position sondern eher die Größe des ganzen.
Es sollte ja eigentlich viel größer sein.

MfG Xer0x
_Xer0x_ is offline  
Old 03/06/2016, 19:52   #8
 
elite*gold: 0
Join Date: Sep 2013
Posts: 491
Received Thanks: 674
Quote:
Originally Posted by _Xer0x_ View Post
Ja schon aber mein Problem is ja nicht die position sondern eher die Größe des ganzen.
Es sollte ja eigentlich viel größer sein.

MfG Xer0x
Bei Listboxen gibt es noch folgende Optionen:
Code:
		self.ItemList.SetItemSize(100,30) #größe der items
		self.ItemList.SetItemStep(20) #abstand zwischen den items
.Kibito is offline  
Thanks
1 User
Old 03/06/2016, 20:40   #9
 
elite*gold: 0
Join Date: Jun 2015
Posts: 47
Received Thanks: 9
Ich danke euch beiden für eure Hilfe.
@: Es hat funktioniert, sieht im Moment so ausß:


Jetzt habe ich allerdings noch ein weiteres Problem, wie kann ich diese ThinBoard seperat füllen?

MfG Xer0x
_Xer0x_ is offline  
Old 03/06/2016, 20:51   #10
 
elite*gold: 0
Join Date: Sep 2013
Posts: 491
Received Thanks: 674
Quote:
Originally Posted by _Xer0x_ View Post
Ich danke euch beiden für eure Hilfe.
@: Es hat funktioniert, sieht im Moment so ausß:


Jetzt habe ich allerdings noch ein weiteres Problem, wie kann ich diese ThinBoard seperat füllen?

MfG Xer0x
Code:
ThinBoards = {}

for i blabla:
   self.ThinBoards[i] = ui.ThinBoard()
   -- und so weiter
   self.DeineListbox.AppendItem(self.ThinBoards[i])
.Kibito is offline  
Old 03/06/2016, 21:02   #11
 
elite*gold: 0
Join Date: Jun 2015
Posts: 47
Received Thanks: 9
Danke .Kibito, ich meinte das aber nicht so sondern ich brauch in jedem ItemBoard(ThinBoard) eine Image min 2 Textlines und min 1 Button.
Das Image und die min 2 Textlines sollte ich halt über eine Quest im Server füllen können.

MfG Xer0x
_Xer0x_ is offline  
Old 03/06/2016, 21:14   #12
 
elite*gold: 0
Join Date: Sep 2013
Posts: 491
Received Thanks: 674
Quote:
Originally Posted by _Xer0x_ View Post
Danke .Kibito, ich meinte das aber nicht so sondern ich brauch in jedem ItemBoard(ThinBoard) eine Image min 2 Textlines und min 1 Button.
Das Image und die min 2 Textlines sollte ich halt über eine Quest im Server füllen können.

MfG Xer0x
Code:
ThinBoards = {}

for i in range(variableVonQuest) oder table von der quest:
	self.ThinBoards[i] = {}
	self.ThinBoards[i]["board"] = ui.ThinBoard()
	self.ThinBoards[i]["board"].SetParent(self.Board)
	self.ThinBoards[i]["board"].SetSize(300,40)
	self.ThinBoards[i]["board"].Show()
	
	self.ThinBoards[i]["text1"] = ui.Textline()
	self.ThinBoards[i]["text1"].SetParent(self.ThinBoards[i]["board"])
	
	self.ThinBoards[i]["text2"] = ui.Textline()
	self.ThinBoards[i]["text2"].SetParent(self.ThinBoards[i]["board"])
	
	
	
	self.ThinBoards[i]["img"] = ui.Imagebox()
	self.ThinBoards[i]["img"].SetParent(self.ThinBoards[i]["board"])
   -- und so weiter
   self.DeineListbox.AppendItem(self.ThinBoards[i]["board"])
sollte doch so funzen du musst da halt noch bei jeder textline und so den rest definieren
.Kibito is offline  
Thanks
1 User
Old 03/06/2016, 21:49   #13
 
elite*gold: 0
Join Date: Jun 2015
Posts: 47
Received Thanks: 9
Ich danke dir ein weiteres mal, jetzt sieht es so auß:



wenn ich noch einmal Probleme haben sollte melde ich mich.

Ich adde dich mal in Skype.

MfG Xer0x
_Xer0x_ is offline  
Old 03/07/2016, 23:13   #14
 
elite*gold: 150
Join Date: Sep 2010
Posts: 1,049
Received Thanks: 272
Quote:
Originally Posted by _Xer0x_ View Post
Danke .Kibito, ich meinte das aber nicht so sondern ich brauch in jedem ItemBoard(ThinBoard) eine Image min 2 Textlines und min 1 Button.
Das Image und die min 2 Textlines sollte ich halt über eine Quest im Server füllen können.

MfG Xer0x

du kannst ja den stuff vom server z.b in ein dict in der constinfo speichern und beim senden kannst du fragen ob deine gui geöffnet ist und dann einfach die texte etc neu setzen und ansonsten ziehst du dir beim öffnen der gui sowieso den stuff aus der constinfo ( du musst ihn halt beim einloggen schon an den client senden)

mfg
gerald500 is offline  
Old 03/08/2016, 07:42   #15
 
elite*gold: 0
Join Date: Jun 2015
Posts: 47
Received Thanks: 9
Danke sehr werde es versuchen

MfG Xer0x


_Xer0x_ is offline  
Reply



« [SS/VM]Desert map 3x3 | Pserver auf Localhost aufsetzen ? »

Similar Threads
[Pythonexperten]Listboxex rückgabewerte
11/19/2014 - Metin2 PServer - Discussions / Questions - 0 Replies
-Close
Metin2 Client Python
09/05/2014 - Metin2 PServer - Discussions / Questions - 2 Replies
Guten Tag, Wie kann ich beim starten meines Clients eine .dll mitstarten ohne einen Python Injector zu benutzen ?
Change language python , client
10/22/2013 - Metin2 PServer - Discussions / Questions - 0 Replies
#close
[Python]Client Problem
10/11/2013 - Metin2 PServer - Discussions / Questions - 15 Replies
Ich habe heute versucht das Kostüm System Client Side einzufügen, leider wenn ich mich einloggen will hänge ich beim Ladebalken fest. Ich vermute das es an einem Falschen Tab liegt den ich gesetzt habe leider mangelt mir es an Python Erfahrung um den Fehler zu beheben. Also wäre es sehr nett wenn mir da jemand helfen könnte. Die Game.py liegt im Anhang. Ich bedanke mich schon mal im Voraus syserr: 1010 20:53:14563 :: File "networkModule.py", line 231, in SetGamePhase 1010 20:53:14564 :: ...
Frage bezüglich CLIENT [PYTHON]
08/31/2013 - Metin2 PServer - Discussions / Questions - 5 Replies
Hallo, habe heute mal aus Fun das Bonusboard von DaRealFreak -> http://www.elitepvpers.com/forum/metin2-pserver-guides-strategies/1985745-release-gescheites-bonusboard.html eingefügt. Nun, da ich es schon so gemacht hab das es sich mit F5 öfffnen lässt wollte ich fragen da wenn ich erneut F5 drücke es sich wieder öffnet ob man das nicht so einstellen kann das wenn man 1x F5 drückt es sich öffnet und beim 2ten ma F5 drücken es sich wieder schließt! Ist das möglich? Wenn ja kann mir jemand...



All times are GMT +1. The time now is 19:55.


Powered by vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Abuse
Copyright ©2018 elitepvpers All Rights Reserved.