Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];




Вниз

Чё то торможу... 


P.   (2002-04-11 18:51) [0]

Помогиет разобраться плз. Вот ЭТО должно создавать класс TCell и зарисовывать ячейки, заполняя туда значения всяких Editов. С этим проблем нет.
Выдаётся ошибка, типа не нравится Col+1 и т.д.
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons, Grids;

type
TCell = class(TObject)
Name: String;
Style: String;
System: String;
Adding: String;
Lang: String;
Color: TColor;
constructor Create (AName, AStyle, ASystem, AAdding, ALang : String; AColor : TColor);
end;

type
TForm1 = class(TForm)
SG: TStringGrid;
Panel1: TPanel;
sbAdd: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
Panel2: TPanel;
Panel3: TPanel;
Edit2: TLabeledEdit;
SpeedButton5: TSpeedButton;
BitBtn1: TBitBtn;
Edit1: TLabeledEdit;
Sys: TLabeledEdit;
Add: TLabeledEdit;
ComboBox1: TComboBox;
Label1: TLabel;
ColorDialog1: TColorDialog;
procedure FormCreate(Sender: TObject);
procedure SGDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect;
State: TGridDrawState);
procedure SpeedButton5Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure Panel3Click(Sender: TObject);
procedure sbAddClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

uses Unit2, Unit3;

{$R *.dfm}

constructor TCell.Create(AName, AStyle, ASystem, AAdding, ALang : String; AColor : TColor);
begin
inherited Create;
Name := AName;
Style := AStyle;
System := ASystem;
Adding := AAdding;
Lang := ALang;
Color := AColor;
end;

procedure TForm1.SGDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
With SG do
if Objects[ACol, ARow] <> Nil then
begin
Canvas.Brush.Color := (Objects[ACol, ARow] as TCell).Color;
Canvas.FillRect(Rect);
Canvas.TextOut(Rect.Left, Rect.Top,
(Objects[ACol, ARow] as TCell).Name);
Canvas.TextOut(Rect.Left, Rect.Top, (Objects[ACol+1, ARow] as TCell).Style);
Canvas.TextOut(Rect.Left, Rect.Top, (Objects[ACol+2, ARow] as TCell).System);
Canvas.TextOut(Rect.Left, Rect.Top, (Objects[ACol+3, ARow] as TCell).Adding);
Canvas.TextOut(Rect.Left, Rect.Top, (Objects[ACol+4, ARow] as TCell).Lang);

end;
end;


procedure TForm1.BitBtn1Click(Sender: TObject);
begin
With Form1.SG do
begin
if Objects[Col, Row] = Nil then
Objects[Col, Row] := TCell.Create(Edit1.Text, Edit2.Text, Sys.Text, Add.Text, ComboBox1.Text, Panel2.Color)
else
begin
(Objects[Col, Row] as TCell).Name := Edit1.Text;
(Objects[Col+1, Row] as TCell).Style := Edit2.Text;
(Objects[Col+2, Row] as TCell).System := Sys.Text;
(Objects[Col+3, Row] as TCell).Adding := Add.Text;
(Objects[Col+4, Row] as TCell).Lang := ComboBox1.Text;
(Objects[Col, Row] as TCell).Color := Panel3.Color;
(Objects[Col+1, Row] as TCell).Color := Panel3.Color;
(Objects[Col+2, Row] as TCell).Color := Panel3.Color;
(Objects[Col+3, Row] as TCell).Color := Panel3.Color;
(Objects[Col+4, Row] as TCell).Color := Panel3.Color;
end;
Refresh;
end;
end;


end.



Игорь Шевченко   (2002-04-12 11:21) [1]

День добрый,

А поподробнее? Где не нравится, в какой строке, если компилятору не нравится или на выполнении не нравится ?

С уважением, Игорь Шевченко

P.S. Фраза
(Objects[Col+1, Row] as TCell).Style := Edit2.Text; компилируется без проблем :-)



PaRL   (2002-04-12 16:29) [2]

Вот на всех Col+1 он выдаёт ошибку(то есть если закомментировать верхние Col+1, то он выдаёт ниже). Вот :(

PS Фраза
(Objects[Col+1, Row] as TCell).Style := Edit2.Text; не компилируется :-(



Игорь Шевченко   (2002-04-12 16:37) [3]

День добрый,

А привести текст сообщения об ошибке религия не позволяет? :-)

С уважением,




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.04 c
1-81003           Sound                 2002-04-10 00:48  2002.04.25  
Что нибудь вместо Random


3-80830           saf                   2002-04-03 10:46  2002.04.25  
Запрос SQL


4-81113           GBX                   2002-02-15 07:38  2002.04.25  
HOOK WIN32


1-80899           Демон                 2002-04-14 19:48  2002.04.25  
Как работать с иконкой в трэйбаре


3-80803           trever                2002-04-05 10:22  2002.04.25  
Помогите советом, пожалуйста!