Tabellen in Flash?

marian

Erfahrenes Mitglied
Hallo zusammen!

Kann man eigentlich Tabellen in Flash 2004 erstellen? Ich möchte das so machen wie bei Macromedia/Developer/Extension hier der Link
Man könnte auch sicher zwei movieClips mit unterschiedlichen Farben und vertikalen Linien basteln, diese dann abwächselnd Anordnen und Textelemente, Buttons und Bilder darauf anordnen, aber das ist jawohl sicher nicht das beste für dynamische Lösungen.
 
Hi,

na ja, das ist in etwa die Methode, die ich in den meisten Fällen verwende (z.B. hier unter "Flash Files" oder "Links"). Mit dynamischen Textfeldern z.B. kommst Du da in der Regel nicht weit.

Auch dynamische Inhalte lassen sich in Pseudo-Tabellen setzen. Meistens verwende ich einen MC (entry) für eine Zeile (oder Zelle); dieser wird so oft wie nötig instaziert und positioniert. Zellenwände und Rahmen sind entweder weiter verschachtelte MovieClips, die sich (je nach Zellengröße) skalieren lassen, oder Du verwendest Zeichnungsmethoden wie lineTo, um die Rahmen zu ziehen.

Gruß

EDIT: knapp zu spät ;)
.
 
Servuz Datic!

Zu spät gibts net, nur zu Früh ;)

Also ne Theoretische Lösung hätte ich schonmal.
Das mit LineToo scheint auch interesant zu sein, aber ich brauch nur zwei Farbspalten und zwei vertikal Linien. Die Spalten werden dann halt immer die selbe Größe haben. Oder ich lese die Textumbrüche mit PHP aus, übergebe sie an Flash und scale mir die "spaltenMovies" demendsprächend zurecht.
Also schönes Wochenende dir :)
 
Oh wenn der Text aber mit HTML geschrieben ist, muss ich doch die Zeilenumbrüche inklusiv den Zeichen auslesen, da ja HTML die Zeilenumbrüche selber macht.. scheint doch nicht so einfach zu sein :(
 
Ja genau... Wenn Du z.B. ein mehrzeiliges Textfeld mit der Eigenschaft (autoSize=true) hast, kannst Du nach dem Einfügen des Textes die Höhe mit der Eigenschaft "textHeight" auslesen und Deine Rahmen-MCs entsprechend skalieren (oder eben Linien zeichnen). Ich hatte z.B. mal einen Zeilen-MC, der folgendes enthielt:

- eine horizontale Linie (als MC)

- ein dynamisches. mehrzeiliges Textfeld (autoSize=true)

- eine weitere horizontale Linie (als MC, unter dem Textfeld)

- einen MC, der zwei vertikale Linien (links und rechts neben dem Textfeld) enthält

Nun wird (z.B. laufend mit onEnterFrame) die Höhe dieser "Zelle" ausgelesen (textHeight wie gesagt) und aufgrund dieses Wertes der untere MC vertikal verschoben und der MC mit den Seitenlinien nachskaliert (_height). In einer übergeordneten Instanz werden nun alle "Zellen"-MCs so angeordnet, dass jede Zelle einen vertikalen Abstand von z.B. 5 Pixel zur vorherigen erhält (cell[ i ]._y = cell[i - 1]._y + cell[i - 1]._height + offset). Nun noch einen Rahmen um das Ganze gezeichnet und gut ist. ;)

Gruß
.
 
Moin Datic

Das mit textHeight auslesen funktioniert ja bestens!
Danke für deine schnelle Hilfe :)
Gruß
 
Zurück