Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.02.10;
Скачать: CL | DM;

Вниз

глобальная переменная - доступ из всех форм   Найти похожие ветки 

 
ply   (2008-01-20 07:03) [0]

нужно чтобы к объекту класса соединения с MySQL был доступ из всех форм.
создал отдельный юнит:

unit Unit1;
interface
uses mysql,mysqlclasses;
var
MySQL: IMySQL;

implementation

procedure initsql();
begin
 MySQL:=TMySQL.Create;
end;

end.

подключаю его к Form1 и в Tform1.OnCreate вместо создания объекта Mysql:=TMySQL.Create вызываю initsql

результат - компилятор ругается на то что неизвестная переменная при обращению к любому свойству Mysql


 
Юрий Зотов ©   (2008-01-20 10:15) [1]

Начнем сначала. Что будет, если вызвать initsql несколько раз?


 
ply   (2008-01-20 15:51) [2]

так у меня даже не компилируется=)
как будто переменная MySQL не переходит в Form1...


 
Плохиш ©   (2008-01-20 16:41) [3]


> подключаю его к

слова, слова...


 
ply   (2008-01-20 16:48) [4]

убрал initsql, осталось тока объявление переменной.
согласно этой статье переменная должна быть во всех формах
http://www.delphimaster.ru/articles/advice/answer19.html

однако компилятор ругается на то что аткой переменной нет...


 
Плохиш ©   (2008-01-20 16:51) [5]


> ply   (20.01.08 16:48) [4]

В статье правильно написано, а что пишешь ты, нам не ведомо...


 
Anatoly Podgoretsky ©   (2008-01-20 16:52) [6]

> ply  (20.01.2008 16:48:04)  [4]

Ты не статью нам показывай.


 
ply   (2008-01-20 17:20) [7]

С переменными разобрался, но на функции ругается.
главная форма:
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs,unit2;

type
 TForm1 = class(TForm)
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
showmessage(ret("Hello!"));
end;

end.

юнит:
unit Unit2;

interface

implementation

function ret(s:string):string;
begin
 result:=s;
end;
end.

Говорит: undeclared identifier: "ret"


 
Плохиш ©   (2008-01-20 17:23) [8]


> ply   (20.01.08 17:20) [7]

Читай статью ещё много раз, учитывая, что всё, что верно для переменных/констант, то и соответственно должно применяться к процедурам и функциям. Логика, знаешь ли, если описания читать - не царское дело...


 
{RASkov} ©   (2008-01-20 17:28) [9]

> [7] ply   (20.01.08 17:20)
> Говорит: undeclared identifier: "ret"

В интерфейсной части модуля, описание сделай...


 
Anatoly Podgoretsky ©   (2008-01-20 19:07) [10]

> ply  (20.01.2008 17:20:07)  [7]

Конечно не видимая, поскольку локальная.



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

Текущий архив: 2008.02.10;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.017 c
1-1194003778
GreySerg
2007-11-02 14:42
2008.02.10
Обработка выхода из ячейки в TStringGrid


1-1194007320
try
2007-11-02 15:42
2008.02.10
Lotus Domino


15-1199607005
Riply
2008-01-06 11:10
2008.02.10
Безопасная (приватная) переписка.


2-1200396419
Lamer666
2008-01-15 14:26
2008.02.10
MessageDLG со своим Caption-ом и картинкой?


2-1200243231
_Shuler_
2008-01-13 19:53
2008.02.10
MS Word и буфер обмена