Seite 1 von 1

[erledigt] Innere Fläche eines TreeGadgets vergößern

Verfasst: 31.03.2010 13:10
von E-P-S
Hi zusammen.

Ich möchte gerne wissen ob man den inneren Bereich eines Controls, in diesem Fall eines TreeGadgets, in seiner Größe verändern kann. Zur besseren Erklärung anbei mal ein Bild:
Bild

Links ist das TreeGadget zu sehen wenn alle Nodes eingeklappt sind. Dann ist rechts neben jedem Node noch Platz bis zum rechten Rend des Gadgets (so ca. 100 Pixel). Klappt man nun alle Childs eines Nodes aus, so passen diese nicht mehr ins Gadget und es wird der horizontale Scrollbalken angezeigt - so ist das völlig richtig und auch normal (siehe "1").

Scrollt man nun nach ganz rechts bis der Scrollbalken sein Ende erreicht (siehe "2"), passt das am weitesten rechts liegende Node gerade noch ins Gadget um es komplett lesen zu können - auch völlig richtig.

Ich möchte diesen "Punkt" nun weiter nach links verlagern um auch hier noch 100 Pixel zum rechten Rand des Gadgets zu haben.

Wie kann ich das bewerkstelligen? Vielen Dank schonmal.

Re: Innere Fläche eines TreeGadgets vergößern

Verfasst: 01.04.2010 23:22
von Fluid Byte
Meinst du die Einrückung :?:

Code: Alles auswählen

OpenWindow(0,0,0,500,300,"void",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TreeGadget(0,0,0,250,300)
TreeGadget(1,250,0,250,300)

For i=1 To 10
	AddGadgetItem(0,-1,"Gadget item #" + Str(i),0,i)
	SetGadgetItemState(0,i-2,#PB_Tree_Expanded)
	AddGadgetItem(1,-1,"Gadget item #" + Str(i),0,i)
	SetGadgetItemState(1,i-2,#PB_Tree_Expanded)	
Next

SendMessage_(GadgetID(0),#TVM_SETINDENT,1,0)

While WaitWindowEvent() ! #PB_Event_CloseWindow : Wend

Re: Innere Fläche eines TreeGadgets vergößern

Verfasst: 01.04.2010 23:46
von E-P-S
Danke erstmal für die Antwort.

Nein so meinte ich das nicht - ist auch schwer zu beschreiben und wie ich mittlerweile erkannt habe wohl weder machbar noch in irgend einer Weise praktikabel (sprich sinnvoll).

Manchmal hab ich einfach bekloppte Ideen...

Sorry - Hat sich somit erledigt das Thema.

Re: [erledigt] Innere Fläche eines TreeGadgets vergößern

Verfasst: 02.04.2010 11:34
von NicTheQuick
Dann müsstest du im Grunde das TreeGadget in ein ScrollAreaGadget einbetten und die Events des TreeGadgets abfangen, wenn sich die Client-Area in der Größe ändert. Dann resized zu einfach das TreeGadget auf die Größe seiner Client-Area plus die 100 Pixel mehr in x-Richtung und mit der Client-Area des ScrollAreaGadgets machst du das selbe.

Re: Innere Fläche eines TreeGadgets vergößern

Verfasst: 02.04.2010 11:40
von DarkDragon
Fluid Byte hat geschrieben:Meinst du die Einrückung :?:
Ich glaube er meint, dass der horizontale Scrollbalken 100pixel weiter geht, damit der Inhalt nicht direkt an der rechten Kante des Gadgets aufhört. Praktisch InnerWidth vom ScrollArea aufs TreeGadget übertragen.

NicTheQuick hats wohl erfasst. Es gäbe da noch einen Trick, aber damit wird die blaue Einfärbung bei der Selektion auch breiter. Man könnte allen Item-Texten entsprechend viele Leerzeichen hinten anhängen. Aber Pixelgenau gehts damit natürlich nicht.