Lập trình Flash lite cho điện thoại di động

1 Tháng sáu 2007 lúc 10:17
#1
:( Em đang làm flash lite, Flash 8.0 cho điện thoại di động. Đến đoạn datagrid thì mắc. Em không biết làm thế nào để đổi màu chữ của một ô trong datagrid.
Đây là code của em: (Phần load dữ liệu từ XML vào datagrid em làm được rồi, nôm na là em chỉ cần quan tâm đổi màu chữ một ô trong datagrid. Em đã hỏi trên nhiều diễn đàn, dùng thử đoạn code : mydatagrid.setCellStyle(1,1,"textcolor",0xFF0000) nhưng toàn báo lỗi là không có phương thức setCellStyle.) Đoạn code sau là đoạn để load XML dạng rdf vào Datagrid, bảng tin chứng khoán sẽ được load vào. Bác nào cao thủ về flash lite, flash8 xin chỉ giáo dùm em với. Em mệt mỏi với cái datagrid này quá.
//****************************************************************************
//Copyright (C) 2005 Macromedia, Inc. All Rights Reserved.
//The following is Sample Code and is subject to all restrictions on
//such code as contained in the End User License Agreement accompanying
//this product.
//****************************************************************************

/*
Working with XML Example - XML_blogTracker
This example shows you how to load, and parse XML and then manipulate it in Flash.
This example file loads XML data from a web log posted on the Internet.
You must have an active Internet connection for this example to work.
*/

// import the required classes.
import mx.controls.*;
import mx.controls.gridclasses.DataGridColumn;
//import mx.core.UIComponent;
//import mx.controls.DataGrid;
//import mx.controls.gridclasses.DataGrid;
import mx.xpath.XPathAPI;


// strict type the component instances on the Stage.
var datagrid_ck: DataGrid;

var mack_lbl:Label;

// create the XML object instance which will be responsible for loading and parsing the remote XML packet.
var rss_url:String = "http://localhost/btinck/btck.rdf";
var rssfeed_xml:XML = new XML();
var rssfeed_xml2:XML = new XML();
rssfeed_xml.ignoreWhite = true;
rssfeed_xml2.ignoreWhite = true;
rssfeed_xml.onLoad = function(success:Boolean) {
// if the XML is successfully parsed by Flash
if (success) {
// create an array which will later be used as a DataProvider for the DataGrid component.
var xmlObj_array:Array = new Array();
// define the XPath search which you will apply to the XML document.
var itemPath:String = "/rdf:RDF/item";
/* search the XML document and apply our XPath search. All matching nodes will be returned as an array named item_array. */
var item_array:Array = XPathAPI.selectNodeList(this.firstChild, itemPath);
// loop through the array of matching XMLNodes and remap the child nodes into an Object
for (var i = 1; i<item_array.length; i++) {
var tempObj:Object = new Object();
var tempNode_array:Array = item_array.childNodes;
for (var j = 0; j<tempNode_array.length; j++) {
tempObj[tempNode_array[j].nodeName] = tempNode_array[j].firstChild.nodeValue;
}
// add the new temporary object to the xmlObj instance.
xmlObj_array.push(tempObj);
}
// set the DataGrid's dataProvider property to the array items found in the XML document.
datagrid_ck.dataProvider = xmlObj_array;
// if the XML wasn't found or was unable to be successfully parsed, handle the error here.
} else {
trace("error loading XML");
}
};
rssfeed_xml.load(rss_url);
rssfeed_xml2.onLoad = function(success:Boolean) {
if (success) {
ngaydd.text = rssfeed_xml2.firstChild.firstChild.firstChild.nodeValue ;
}
};
rssfeed_xml2.load(rss_url);

// create and configure the "mack_cot" column for the DataGrid
var mack_cot: DataGridColumn = new DataGridColumn("mack");
//datagrid_ck.hScrollPolicy="auto";
mack_cot.width = 30; // width in pixels.
mack_cot.headerText = "Ma";
datagrid_ck.addColumn(mack_cot);

// create and configure the "dc:thamchieu_cot" column to the DataGrid
var thamchieu_cot: DataGridColumn = new DataGridColumn("dc:thamchieu");
thamchieu_cot.width = 30;
thamchieu_cot.headerText = "TC";
datagrid_ck.addColumn(thamchieu_cot);

// create and configure the "dc: gia_cot" column to the DataGrid
var gia_cot: DataGridColumn = new DataGridColumn("dc:gia");
gia_cot.width = 30;
gia_cot.headerText = "Gia";
datagrid_ck.addColumn(gia_cot);

// create and configure the "dc:creator" column to the DataGrid
var thaydoi_cot: DataGridColumn = new DataGridColumn("dc:thaydoi");
thaydoi_cot.width = 30;
thaydoi_cot.headerText = "+/-";
datagrid_ck.addColumn(thaydoi_cot);

var kl_cot: DataGridColumn = new DataGridColumn("dc:kl");
kl_cot.width = 30;
kl_cot.headerText = "KL";
datagrid_ck.addColumn(kl_cot);

// create a listener for the DataGrid instance which will be triggered when the user clicks on an item.
var dgListener:Object = new Object();
dgListener.change = function(evt:Object) {
// copy the title column from the DataGrid's currently selected item into the title_lbl Label instance.
evt.target._parent.mack_lbl.text = evt.target.selectedItem.mack;
};
datagrid_ck.addEventListener("change", dgListener);
datagrid_ck.setStyle("fontSize", 9);
//ngaydd.text=Date();
mack_lbl.html = false;
mack_lbl.setStyle("color", 0xFFFFFF);
mack_lbl.autoSize = "left";
function setDataGridStyles(instance) {
instance.getColumnAt(1).setStyle("Color", 0xFF0000);
instance.setStyle("headerColor", "haloOrange");
instance.setStyle("vGridLines", true);
instance.setStyle("hGridLines", true);
instance.setStyle("vGridLineColor", "haloOrange");
instance.setStyle("hGridLineColor", "haloOrange");
};
datagrid_ck.hScrollPolicy = "off";
datagrid_ck.vScrollPolicy = "off";
//datagrid_ck.setCellStyle(1,1,"textColor","0xFFFF00");
setDataGridStyles(datagrid_ck);
datagrid_ck.setFocus();
 

Bài viết cần bạn xem thêm

Lazada Vietnam Master card on Monday