Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.04 c
15-1199385249
@!!ex
2008-01-03 21:34
2008.02.10
Легкий браузер...


1-1193941965
Igor Zorkov
2007-11-01 21:32
2008.02.10
Запретить передачу фокуса окну по которому кликаешь


1-1193959547
яблочго
2007-11-02 02:25
2008.02.10
Движение точки по окружности


15-1199970591
@!!ex
2008-01-10 16:09
2008.02.10
Помогите доделать тир.


3-1190872890
Sasha_GTI
2007-09-27 10:01
2008.02.10
excel -> Paradox





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский