Показать сообщение отдельно
Старый 12.04.2007, 19:01
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Код:
my_dg.columnNames = ['a', 'b'];
my_dg.addItem({a:'aaa', b:'bbb'});
my_dg.addItem({a:'aaa', b:'bbb'});
my_dg.addItem({a:'aaa', b:'bbb'});
changeDrawColumnsHandler = function (grid) {
	grid.drawColumns = function() {
		var hLineHeight = 4; // тощина гор. линии
		var vLineWidth = 2; // толщиа верт. линии
		delete this.invDrawCols;
		var lines = this.lines_mc=this.listContent.createEmptyMovieClip("lines_mc", this.LINEDEPTH);
		var x = 0.75;
		var oldX = 1;
		var tmpHeight = this.height-1;
		var lineCol = this.getStyle("vGridLineColor");
		var len = this.columns.length;
		this.placeSortArrow();
		for (var i = 0; i<len; i++) {
			var col = this.columns[i];
			var prop = (this.enabled) ? "backgroundColor" : "backgroundDisabledColor";
			var bgCol = col.getStyle(prop);
			x += col.__width;
			lines.moveTo(oldX, 1);
			lines.lineStyle(0, lineCol, 0);
			var tmpX = Math.floor(x);
			lines.lineTo(tmpX, 1);
			if (i<this.columns.length-1 && this.getStyle("vGridLines")) {
				lines.lineStyle(vLineWidth, lineCol, 100);
			}
			lines.lineTo(tmpX, height);
			lines.lineStyle(vLineWidth, lineCol, 0);
			lines.lineTo(oldX, height);
			lines.lineTo(oldX, 1);
			if (this.__showHeaders) {
				var cell = this.headerCells[i];
				cell._x = oldX+2;
				cell.hO._x = oldX;
				cell.setSize(col.__width-5, Math.min(this.__headerHeight, cell.getPreferredHeight()));
				cell.hO._width = col.__width-2;
				cell.hO._height = this.__headerHeight;
				cell._y = (this.__headerHeight-cell._height)/2;
				this.header_mc["sep"+i]._x = x-2;
				this.listContent.disableHeader._width = this.totalWidth;
			}
			for (var j = 0; j<this.__rowCount; j++) {
				if (i == 0) {
					this.rows[j].colBG.clear();
				}
				var w:Number = col.__width;
				this.rows[j].drawCell(i, oldX, w, bgCol);
			}
			oldX = x;
		}
		if (this.getStyle("hGridLines")) {
			this.lines_mc.lineStyle(2, this.getStyle("hGridLineColor"));
			for (var i = 1; i<this.__rowCount; i++) {
				this.lines_mc.moveTo(hLineHeight, this.rows[i]._y);
				this.lines_mc.lineTo(this.totalWidth, this.rows[i]._y);
			}
		}
	};
};
changeDrawColumnsHandler(my_dg);
my_dg.setStyle('hGridLines', true);
my_dg.setStyle('hGridLineColor', 0xFF0000);
my_dg.setStyle('vGridLineColor', 0x0000FF);
my_dg.redraw();
Как-то так. Мог накосячить.