Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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]

День добрый,

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

С уважением,



Страницы: 1 вся ветка

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

Наверх





Память: 0.46 MB
Время: 0.008 c
1-80868
kopachev
2002-04-12 10:28
2002.04.25
Как программно менять значение Options в StringGride


3-80758
Sergant
2002-04-01 16:25
2002.04.25
Вопросы по MS SQL 6.5


4-81112
Tundra
2002-02-17 15:37
2002.04.25
Как определить версию windows(95,98,me,nt,2000,xp)?


1-80843
Rammst
2002-04-13 07:49
2002.04.25
PlaySound


1-81009
Demon Ltd
2002-04-13 00:05
2002.04.25
Работа повторно с меню





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский