Zurück   Flashforum > Flash > Flash erweitern > Komponenten und SmartClips

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-03-2009, 13:51   #1 (permalink)
Rene
 
Registriert seit: Mar 2003
Beiträge: 19
Panel

Hallo,

für meine Formulierung der Frage muss ich mal ein paar Begriffe aus dem .NET C# Umfeld gebrauchen, da ich nicht weis, wie ich es besser beschreiben könnte.

Wie kann ich ein scrollbares Panel mit n-Checkboxen (oder anderen Objekten) anlegen. Die Komponente List ist da ja nicht so geeignet.

Und wie spicht man solch CheckBoxList von den einzelnen Elementen an.

Ich hätte das mir gerne als Komponente zusammen gebaut.
Wie fange ich nun am besten an?

Danke
Rene
reneXYX ist offline   Mit Zitat antworten
Alt 16-03-2009, 14:19   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
->verschoben

In einer Listbox oder einem DataGrid kannst du mithilfe von Cellrendereren auch Checkboxen anlegen. Einfacher geht es aber mit dem Flex Builder, da dessen DataGrid- und List-Komponenten über eingebaute Itemrenderer sehr einfach andere Komponenten in den Zeilen darstellen können.
  Mit Zitat antworten
Alt 16-03-2009, 14:55   #3 (permalink)
Rene
 
Registriert seit: Mar 2003
Beiträge: 19
Hallo Holger,

sowas ahb ich auch schon im Forum gefunden, doch muss ich zugestehen, dass ich nicht so recht damit klar komme.

Code:
gridBilder.setStyle("cellRenderer", datagridRenderer);

...

package {
	import flash.text.*;
	import fl.controls.listClasses.CellRenderer;
	import fl.controls.listClasses.ICellRenderer;
	import fl.controls.listClasses.ListData;
	import fl.controls.*;

	public class datagridRenderer extends CellRenderer implements ICellRenderer {
		private var _listData2:ListData;
		private var _data2:Object;

		public function datagridRenderer() {
		}

		public override function set data(d:Object):void {
			_data2=d;

			var cb:CheckBox = new CheckBox();
			cb.selected = false;
			cb.label = d.label;
			this.addChild(cb);
			// trace(d.label);
		}

		public override function get data():Object {
			return _data2;
		}

		public override function set listData(ld:ListData):void {
			_listData2=ld;
		}

		public override function get listData():ListData {
			return _listData2;
		}
	}
}
analog dem Sample hier

kommentiere ich die Checkbox aus, dann steht x-Mal "Label" drin, lass ichs drin liegt beides immer über einander.

Datenbindung mache ich so:

Code:
var dp:DataProvider = new DataProvider();
...
for (var i:uint = 0; i < files.length; i++) {
			dp.addItem({label: files[i].name});
			trace(files[i].name);
		}
		gridBilder.dataProvider=dp;
Vielleicht hat jemand eine Idee?

Danke
Rene
reneXYX ist offline   Mit Zitat antworten
Alt 16-03-2009, 16:15   #4 (permalink)
undefined
 
Benutzerbild von mildesign
 
Registriert seit: Jul 2001
Ort: Stuttgart
Beiträge: 1.839
Zitat:
Zitat von reneXYX Beitrag anzeigen
lass ichs drin liegt beides immer über einander.
um das Layouting musst du dich bei der CellRenderer Api selber kümmern

Automatisches Layouting gibt es im Flex Framework
Stichworte mx:List und ItemRenderer
__________________
mfg Frank
mildesign ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist aus.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 11:19 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele