Главная страница
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.023 c
2-1200159348
istok
2008-01-12 20:35
2008.02.10
показать сообщение не из своей программы


2-1200307883
asdf
2008-01-14 13:51
2008.02.10
DBGrid


15-1199903664
@!!ex
2008-01-09 21:34
2008.02.10
Какой БП нужен?


4-1182240688
Dib@zol
2007-06-19 12:11
2008.02.10
Наборы векторов из символа шрифта


2-1200677665
no_limit
2008-01-18 20:34
2008.02.10
Осуществить перенос текста мышью из Memo в Memo (MDI)