Thx Alex!

You're the man!

--- In [email protected], "Alex Harui" <[EMAIL PROTECTED]> wrote:
>
> The recommended practice is to define the fontSize on the column 
and not
> the label.
> 
> ________________________________
> 
> From: [email protected] 
[mailto:[EMAIL PROTECTED] On
> Behalf Of handitan
> Sent: Friday, November 02, 2007 8:49 AM
> To: [email protected]
> Subject: [flexcoders] Re: Flex 2.0.1: Calling all Flex Masters for 
this
> interesting printing format issue
> 
> 
> 
> Does anyone have any ideas/suggestions to tackle this printing 
issue?
> I hope my explanation was clear enough.
> 
> Thank you for reading.
> 
> --- In [email protected] <mailto:flexcoders%
40yahoogroups.com>
> , "handitan" <handitan@> wrote:
> >
> > I have been trying to solve this issue for days but still 
couldn't 
> > find the right solution.
> > 
> > I am going to make as simple as I can about the issue.
> > Here's the situation:
> > I have this DataGrid
> > <mx:DataGrid id="myDataGrid" width="100%" height="100%">
> > <mx:columns>
> > <mx:DataGridColumn headerText="FirstName" dataField="fName"
> > itemRenderer="Renderer.NameRenderer"/> 
> > <mx:DataGridColumn headerText="LastName" dataField="lName"
> > itemRenderer="Renderer.NameRenderer"/> 
> > </mx:columns>
> > </mx:DataGrid>
> > ===========================================
> > Now here's the NameRenderer's definition:
> > <mx:HBox width="100%" horizontalAlign="left" 
verticalAlign="middle">
> > <mx:Script>
> > <![CDATA[ 
> > override public function set data(value:Object):void {
> > super.data = value;
> > 
> > if (value != null)
> > {
> > myLabel.text = value; 
> > } 
> > 
> > ]]>
> > </mx:Script>
> > <!-- Remember the font size please. It relates to the issue-
> ->
> > <mx:Label id="myLabel" fontSize="14">
> > 
> > </mx:HBox>
> > ==================================================
> > 
> > Now, the grid displays fine in my flex app. Then I added a 
> > functionality to be able to print the grid using almost exactly 
the 
> > same like in this example:
> > 
> 
http://livedocs.adobe.com/flex/2/langref/mx/printing/PrintDataGrid.htm
> 
<http://livedocs.adobe.com/flex/2/langref/mx/printing/PrintDataGrid.ht
m>
> 
> > l#includeExamplesSummary
> > with the following exceptions:
> > - My FormPrintView doesn't have the all of the <mx:columns> 
stuffs 
> in 
> > PrintDataGrid.
> > - Inside my doPrint() (this is in PrintDataGridExample section) 
> under
> > thePrintView.myDataGrid.dataProvider = myDataGrid.dataProvider 
> > statement, I add this:
> > thePrintView.myDataGrid.columns = myDataGrid.columns;
> > ==================================================
> > Now when I print it out, everything is working fine and dandy 
(good 
> > job Flex team!).
> > 
> > Then one day, I was told to do a "bit" change. The Printouts need 
> to 
> > be in font-size 8 instead of 14. The grid looks great on the web 
> > using font-size 14 but when it is being printed out, it needs to 
be 
> > in font-size 8.
> > 
> > So my question is how do you do that?
> > Just to let you know, these were the things that I try:
> > - In my FormPrintView, I added this attribute 'fontSize="8"'. I 
> > thought that this will take care the problem but it didn't. It 
> wasn't 
> > overriding myLabel's fontSize.
> > - Then I do another way using Bindable strategy, this is what I 
did:
> > == Create a global variable to store the font size.
> > <GlobalFont.as>
> > package myGlobals
> > {
> > [Bindable]
> > public class GlobalFont
> > {
> > public static const DEFAULT_SIZE:int = 14;
> > public static const PRINT_SIZE:int = 8;
> > public static var myFontSize:int = DEFAULT_SIZE;
> > }
> > }
> > 
> > ==Then in NameRenderer, I change myLabel to be like this:
> > <mx:Label id="myLabel" fontSize="{GlobalFont.myFontSize}">
> > 
> > ==Then on my doPrint(), I add this before I assign the 
dataProvider 
> > and columns to thePrintView.myDataGrid:
> > GlobalFont.myFontSize = GlobalFont.PRINT_SIZE
> > 
> > ==Then I do the print.
> > Result: It prints out with the font-size 8 :) But the Flex app 
will 
> > show all my grid's column content to be shifted off the column 
> after 
> > I scroll the grid up/down (you have to have large data that will 
> have 
> > the vertical scroll bar to appear). You can fix the display again 
> but 
> > clicking the column's header.
> > 
> > Again I call all Flex Masters to share your wisdom in this matter.
> > I have been given a deadline to fix this by early next week. So 
all 
> > ideas/suggestions/anything will help.
> > 
> > Thank you!
> >
>


Reply via email to