Текущий архив: 2005.02.20;
Скачать: CL | DM;
ВнизПочему неоткрывается frmGraph? Найти похожие ветки
← →
MakedoneZ © (2005-02-02 11:06) [0]USES ........,Graph;
interface
.......
implementation
btnShowGraphOnClick(Sender: TObject)
begin
frmGraph.Visible:=true;
end;
Почему-то выдает ошибку "Access Violation at Address 004....."
Почему это возникает? Вроде не должно быть...
← →
Cosinus © (2005-02-02 11:13) [1]
> MakedoneZ © (02.02.05 11:06)
А она (frmGraph) создана?
frmGraph.Create есть?
← →
Johnmen © (2005-02-02 11:16) [2]Где объявление процедуры ? Если это метод, то где определение чей ?
← →
MakedoneZ © (2005-02-02 11:24) [3]unit Graph;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TfrmGraph = class(TForm)
imgGraph_1: TImage;
imgGraph_3: TImage;
imgGraph_2: TImage;
procedure btnExitClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
procedure PaintGraph(Graph: TImage);
var
frmGraph: TfrmGraph;
implementation
{$R *.dfm}
procedure PaintGraph(Graph: TImage);
var i: Byte;
x,y: Integer;
t: Currency;
s: String;
begin
with Graph.Canvas do
begin
Pen.Width:=3;
Rectangle(1,1,648,167);
Pen.Width:=2;
MoveTo(0,149);
LineTo(649,149);
MoveTo(0,20);
LineTo(649,20);
MoveTo(120,0);
LineTo(120,649);
TextOut(18,150,"Ìåíñòðóàöèè");
TextOut(18,5,"Äíè öèêëà:");
Brush.Color:=RGB(197,250,248);
FloodFill(125,40,clBlack,fsBorder);
Pen.Width:=2;
Rectangle(10,140,80,120);
Pen.Width:=1;
Font.Color:=clBlue;
Brush.Color:=clWhite;
FloodFill(50,50,clBlack,fsBorder);
y:=20;
t:=37.2;
for i:=1 to 7 do
begin
if (t=36)OR(t=37) then s:=CurrToStr(t)+",0" else s:=CurrToStr(t);
TextOut(95,y+10,s);
Inc(y,16);
t:=t-0.2;
MoveTo(120,y);
LineTo(649,y);
end;
x:=120;
Font.Size:=6;
for i:=1 to 33 do
begin
Brush.Color:=clWhite;
FloodFill(x+1,5,clBlack,fsBorder);;
TextOut(x+1,5,IntToStr(i));
Inc(x,16);
MoveTo(x,0);
LineTo(x,649);
end;
end;
end;
procedure TfrmGraph.btnExitClick(Sender: TObject);
begin
Application.Terminate;
end;
end.
← →
Cosinus © (2005-02-02 11:30) [4]
> MakedoneZ © (02.02.05 11:24) [3]
Еще раз спрашиваю, форма уже создана? Projects=>Options=>Auto-create forms. Она там есть? Или она должна быть создана в рантайм(чего я правда не вижу)?
← →
Johnmen © (2005-02-02 11:35) [5]>MakedoneZ © (02.02.05 11:24) [3]
Так в чём вопрос ?
← →
ЮЮ © (2005-02-02 11:36) [6]У тебя не unit Graph просили, а "почему btnShowGraphOnClick(Sender: TObject) - процедура, а не метод формы? Когда и как ты её вызываешь?" Ну и, наконец, TfrmGraph - автосоздаваемая или нет?
← →
MakedoneZ © (2005-02-02 11:36) [7]Нет.Там нет frmGraph.
Вот моя ошибка.
Как исправить?
Как создать динамически?
← →
MakedoneZ © (2005-02-02 12:04) [8]Из меня информацию как клещами надо...
btnShowGraphOnClick(Sender: TObject) это метод формы MyForm.
И при нажатии на btnShowGraph должна открыться форма frmGraph со всеми своими процедурами и функциями.
Так вот по-моему ошибка в том что в Auto Create forms нет формы frmGraph.
Так вот как во время выполнения программы открыть эту форму frmGraph.
← →
Cosinus © (2005-02-02 12:22) [9]
> Так вот как во время выполнения программы открыть эту форму
> frmGraph
Создать.
Например...
1)Application.CreateForm+F1
2)TCustomForm.Create+F1
← →
MakedoneZ © (2005-02-02 12:54) [10]Вот-вот уже получилось. Спасибо огромное.
Страницы: 1 вся ветка
Текущий архив: 2005.02.20;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.045 c