2015-04-27 95 views
0

當我嘗試使用時,我得到了不顯示任何數據的datagrid的空白字段。 php或。 xml文件在瀏覽器中顯示整個xml文件。使用datagrid,flash,php,mysql,as3顯示數據庫中的數據

billRecords.addEventListener(MouseEvent.MOUSE_DOWN, dbShow); 

function dbShow(e: MouseEvent): void { 
     data_grid.addColumn("Table No"); 
     data_grid.addColumn("Date"); 
     data_grid.addColumn("Items"); 
     data_grid.addColumn("Quantity"); 
     data_grid.addColumn("Total"); 
     data_grid.width = 1150; 
     data_grid.rowCount = 100; 
     data_grid.move(5, 35); 
     addChild(data_grid); 

     var urlPhp: String = "billrecords.xml"; 
     var request: URLRequest = new URLRequest(urlPhp); 
     var url_loader: URLLoader = new URLLoader(); 
     url_loader.addEventListener(Event.COMPLETE, completeHandler); 
     url_loader.load(request); 

     close_btn.x = 1155; 
     close_btn.y = 10; 
     addChild(close_btn); 
     close_btn.addEventListener(MouseEvent.MOUSE_DOWN, closeDbShow); 

    } 
    function completeHandler(event: Event): void { 
     var ldr: URLLoader = event.currentTarget as URLLoader; 

     // create XML datastructure from loaded XML 
     var xmlDP: XML = new XML(ldr.data); 
     var xmlDoc:XMLDocument = new XMLDocument(); 
     xmlDoc.ignoreWhite = true; 
     xmlDoc.parseXML(xmlDP.toXMLString()); 


     var dp=new DataProvider(xmlDP); 
     trace(dp); 

     data_grid.dataProvider = dp ; 

    } 

當我跟蹤dp時,它顯示對象。我如何獲得這些對象來顯示數據網格中的文本。請大家需要幫助。 DataGrid是否支持Adobe Air應用程序?謝謝

回答

0

您可以使用xmlObject本身。您只需將其轉換爲XML,然後將其傳遞給DataProvider構造函數»data_grid.dataProvider = new DataProvider(XML(ldr.data)) GreetingsAndré

+0

仍然沒有得到在數據網格的文本。當我跟蹤ldr.data我得到這些<?xml version =「1.0」?> 27/4/2015 冰戈拉,kulfhi,BHEL 2,1,2 27/4/2015 gola,bhel,kulfhi 1,1,1 ,當我跟蹤data_grid.dataprovider我得到這些 的DataProvider [目標對象],[對象的對象] –

0

好的。 Actionscript和xml是大小寫密集的語言。 datagrid無法找到例如「T able」in the xml,因爲xml-node被命名爲「t able」。

這應該解決的問題:

dg.addColumn("table"); 
dg.addColumn("date"); 
dg.addColumn("items"); 
dg.addColumn("quantity"); 
dg.addColumn("total"); 
dg.getColumnAt(0).headerText="Table"; 
dg.getColumnAt(1).headerText="Date"; 
dg.getColumnAt(2).headerText="Items"; 
dg.getColumnAt(3).headerText="Quantity"; 
dg.getColumnAt(4).headerText="Total"; 

而且loaderCompleteHandler:

function completeHandler(event: Event): void { 
    var ldr:URLLoader = event.currentTarget as URLLoader; 
    var xmlDP:XML = new XML(ldr.data); 
    var dp:DataProvider = new DataProvider(xmlDP);  
    data_grid.dataProvider = dp ; 
} 

問候安德烈