Zurück   Flashforum > Flex und AIR > Flex programmieren

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-02-2011, 12:55   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Ort: Mönchengladbach
Beiträge: 26
DataGrid mit schrägen Headertexten

Hallöle,

ich versuche ein DataGrid zu erstellen, deren DataGridColumns einen schrägen Header besitzen, so dass eine unumgebrochene Spaltenüberschrift bei gleichbleibender Spaltenbreite möglich ist. Leider wird der Inhalt des darin enthaltenen Labels immer von der Nachbarzelle überdeckt bzw. vom Header selber maskiert:



Die Eigenschaften des DataGrids und der DataGridColumns sollten eigentlich dazu führen, dass alles soweit transparent ist und somit keine Überdeckung stattfindet

PHP-Code:
<mx:DataGrid id="DATAGRID_sample"
             
height="200"
             
width="740"
             
borderStyle="none"
             
textAlign="center"
             
resizableColumns="false"
             
selectable="false"
             
sortableColumns="false"
             
headerHeight="45"
             
resize="setColumnWidth()"
             
creationComplete="setColumnWidth()"
             
headerSeparatorSkin="HeaderSeparator"
             
headerBackgroundSkin="HeaderSeparator"
             
backgroundAlpha="0"
             
headerColors="[0xFFFFFF,0xAAAAAA]"
             
focusEnabled="false">
    <
mx:columns>
        <
mx:DataGridColumn id="DATAGRIDCOL_temp"
                           
headerText="Blahblubblah"
                           
dataField="value"
                           
width="42"
                           
headerRenderer="CustomHeader"/> 
Von daher gehe ich aus, dass die von mir gecodete Komponente zur Darstellung der Header den Text abschneidet/maskiert:
PHP-Code:
<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" 
           width="200" 
           height="100%" 
           verticalScrollPolicy="off" 
           horizontalScrollPolicy="off"
           backgroundAlpha="0">
    <mx:Script>
        <![CDATA[
            import flash.text.engine.FontWeight;
            
            import mx.controls.DataGrid;
            import mx.controls.dataGridClasses.DataGridListData;
            [Embed(systemFont='Arial', fontName='arialEmbedded', mimeType='application/x-font', unicodeRange='U+0020-U+007E')] 
            public var arialEmbedded:Class;
            
            import mx.controls.dataGridClasses.DataGridColumn;
            import mx.managers.SystemManager;
            
            [Bindable]
            private var _text:String;
            
            private var _height:Number;
            
            override public function set data(value:Object):void{
                _height = height;
                var col:DataGridColumn = value as DataGridColumn;
                _text = col.headerText;
                headerLabel.x = 10;
                headerLabel.y = _height - 12;
            }
            
        ]]>
    </mx:Script>
    <mx:Label id="headerLabel" height="14" rotation="-45" fontFamily="arialEmbedded" text="{_text}"/>
</mx:Canvas>
Kann mir da viellicht einer weiterhelfen?!

Dank und Gruß

Klaus
HarpoMarx ist offline   Mit Zitat antworten
Alt 16-02-2011, 18:07   #2 (permalink)
Neuer User
 
Registriert seit: Jun 2007
Beiträge: 71
Ich habs jetzt weder getestet noch je mit sowas gearbeitet aber du drehst dein Label, dein Canvas steht aber weiterhin senkrecht auf deinem DataGrid. Hast mal versucht dem auch eine rotation mitzugeben?
Rotzlucky ist offline   Mit Zitat antworten
Alt 17-02-2011, 08:13   #3 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Ort: Mönchengladbach
Beiträge: 26
...

Nein, aber ich denke auch nicht, dass die Rotation des Canvas das Abschneiden der Labelkomponente verhindern könnte.
Wenn ich die Labelkomponente um -135° drehe, so dass sie nach 'Nord-West' zeigt, wird sie auch dort abgeschnitten, was auch wiederum ein Indiz dafür ist, dass das Label maskiert und nicht überdeckt wird.
Den Ansatz sehe ich demnach darin, dass man dem CustomHeader erlaubt über den Rand des Headers hinauszuragen.
HarpoMarx ist offline   Mit Zitat antworten
Alt 17-02-2011, 11:20   #4 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Ort: Mönchengladbach
Beiträge: 26
Lösung

Ah, Lösung gefunden:
Code:
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" 
		   width="200" 
		   height="100%" 
		   verticalScrollPolicy="off" 
		   horizontalScrollPolicy="off"
		   clipContent="false"
		   backgroundAlpha="0">
mit dem Default auf true wird der Inhalt an den Grenzen abgeschnitten.
HarpoMarx ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
datagrid, headerrenderer

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 an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Schrägen und hitTest IIDarianII Flash 8 3 26-12-2008 15:48
Kollision mit Schrägen dreck Flash MX 1 15-04-2004 14:51
Sonic Engine: Rotation bei schrägen Plattformen T.A. ActionScript 1 0 10-09-2003 17:16
hitTest auf schrägen MC's bamsi ActionScript 1 7 16-10-2002 17:14
keine schrägen dyn. Textfelder möglich? mettnet Flash MX 2 03-09-2002 19:50


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:07 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele