Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переменные другой формы 
:(
    Опции темы
NoeR
Дата 4.6.2005, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 233
Регистрация: 6.2.2005

Репутация: нет
Всего: нет



Как изменить значение какой либо переменной находящейся на другой форме?
uses unit2 сделал, а вот Form2.Переменной нет smile
--------------------
По факту пропажи мужа, возбуждено... Два соседа.Если у Вас проблемы с ребенком, спросите у жены, может, это не Ваши проблемы!>>> NoeR++ <<<
PM MAIL ICQ   Вверх
Quadr0
Дата 5.6.2005, 00:38 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











...

Это сообщение отредактировал(а) Quadr0 - 14.7.2011, 21:08
  Вверх
Poseidon
Дата 5.6.2005, 01:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(Quadr0 @ 5.6.2005, 00:38)
А куда ты эту переменную на второй форме засунул?
Да, NoeR, не понятно что не так. Ты бы код выложил, тогда и стало бы ясно, что у тя нитак. Проблема-то пустяковая и ошибка точно наверху лежит smile


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
NoeR
Дата 5.6.2005, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 233
Регистрация: 6.2.2005

Репутация: нет
Всего: нет



В бублик не получилось…
Вот код для третьей форме:
Код

...
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form3: TForm3;
  vot:String;
implementation
...

Больше там пока ничего нет…
Мне надо как-то переменную vot менять во второй форме…
На второй форме тоже пока ничего нет…
Вот так вот не получается:
Form3.vot:='YRA!!!';
А надо бы smile
--------------------
По факту пропажи мужа, возбуждено... Два соседа.Если у Вас проблемы с ребенком, спросите у жены, может, это не Ваши проблемы!>>> NoeR++ <<<
PM MAIL ICQ   Вверх
Pakshin A. S.
Дата 5.6.2005, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Обалдеть!!!

Способ 1
Обращаться так:
Код

vot:='УРА!!!'


Способ 2
Записать вот здесь:
Код

public
 vot: string;

PM   Вверх
Rrader
  Дата 5.6.2005, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Inspired =)
***


Профиль
Группа: Экс. модератор
Сообщений: 1535
Регистрация: 7.5.2005

Репутация: 70
Всего: 191



Добавь в Unit, из которого вызываешь
Цитата
Form3.vot:='YRA!!!';
это:
Код

unit Unit_смотри выше;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, [b]Unit3[/b];

....

При условии, что Form3 лежит в Unit3. smile

Цитата

Обалдеть!!!

Угу! smile smile

Это сообщение отредактировал(а) Rrader - 5.6.2005, 11:06


--------------------
Let's do this quickly!
Rest in peace, Vit!
PM MAIL Skype   Вверх
Pakshin A. S.
Дата 5.6.2005, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Rrader, ваш вариант сработает только с моим вторым способом.. И я думаю, что NoeR все-таки добавил модуль в юзез...

Вообще у него переменная vot не содержится в форме, а она является свободной переменной! Так что к ней нужно обращаться вообще без указания формы!!!

Вообще все это - элементарная теория...
PM   Вверх
Rrader
Дата 5.6.2005, 11:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Inspired =)
***


Профиль
Группа: Экс. модератор
Сообщений: 1535
Регистрация: 7.5.2005

Репутация: 70
Всего: 191



Цитата

Так что к ней нужно обращаться вообще без указания формы!!!

Извиняюсь, не заметил. smile


--------------------
Let's do this quickly!
Rest in peace, Vit!
PM MAIL Skype   Вверх
NoeR
Дата 5.6.2005, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 233
Регистрация: 6.2.2005

Репутация: нет
Всего: нет



Что это значит: [Fatal Error] Unit2.pas(7): Circular unit reference to 'Unit2'? smile
--------------------
По факту пропажи мужа, возбуждено... Два соседа.Если у Вас проблемы с ребенком, спросите у жены, может, это не Ваши проблемы!>>> NoeR++ <<<
PM MAIL ICQ   Вверх
Rrader
  Дата 5.6.2005, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Inspired =)
***


Профиль
Группа: Экс. модератор
Сообщений: 1535
Регистрация: 7.5.2005

Репутация: 70
Всего: 191



Это значит, что в списке Uses одного Unit'а находится объявление другого Unit'а, в котором в том же списке Uses находится объявление первого Unit'а. При этом список Uses находится в интерфейсной части. Решение проблемы: перенести один из списков Uses в секцию реализации.(Implementation) smile

Это сообщение отредактировал(а) Rrader - 5.6.2005, 12:43


--------------------
Let's do this quickly!
Rest in peace, Vit!
PM MAIL Skype   Вверх
NoeR
Дата 5.6.2005, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 233
Регистрация: 6.2.2005

Репутация: нет
Всего: нет



Эта ошибка у меня появляется тогда, когда я на вторую форму (всего 3и) ставлю Unit3...
На Юнит1 я могу это всунуть, но варианты Rrader и Pakshin A. S. не пашут!! smile
Цитата
Способ 1
Обращаться так:

Гениальная идея, smile просто супер, если насчитать что эту переменную он не может найти, т.к. она на другой, совсем другой форме... smile
Цитата
Способ 2
Записать вот здесь:

Вторым постом мне это посоветовали, я попробовал и написал 4ым постом, что не получилось!
Цитата
Добавь в Unit, из которого вызываешь

Первым постом:
Цитата
uses unit2 сделал

--------------------
По факту пропажи мужа, возбуждено... Два соседа.Если у Вас проблемы с ребенком, спросите у жены, может, это не Ваши проблемы!>>> NoeR++ <<<
PM MAIL ICQ   Вверх
Rrader
Дата 5.6.2005, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Inspired =)
***


Профиль
Группа: Экс. модератор
Сообщений: 1535
Регистрация: 7.5.2005

Репутация: 70
Всего: 191



Ошибка:
Модуль 1.
Код

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
  end;

Модуль 2.
Код

unit Unit2;

interface

Uses Unit1;

implementation

end.


Решение:
Модуль 1 оставить прежним.
Модуль 2:

Код

unit Unit2;

interface

implementation

Uses Unit1;

end.

Либо перенести список Uses из Модуля 1.
Я не буду объяснять некоторые дополнительные детали, читай хелп.
Добавлено @ 12:51
УЖАС!!! smile Выложи полный код всех форм!


--------------------
Let's do this quickly!
Rest in peace, Vit!
PM MAIL Skype   Вверх
Pakshin A. S.
Дата 5.6.2005, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Вот... издевательство над дельфями...

Дык ты разобрался с переменными?

А вообще... опиши ка нам для чего первый юнит ссылается на второй, а тот на первый обратно?
PM   Вверх
NoeR
Дата 5.6.2005, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 233
Регистрация: 6.2.2005

Репутация: нет
Всего: нет



Кажется получилось, спасибо…
Добавлено @ 13:32
У меня, кажется с Юнитами глюк был, поэтому не махала операция для изменения переменных smile
--------------------
По факту пропажи мужа, возбуждено... Два соседа.Если у Вас проблемы с ребенком, спросите у жены, может, это не Ваши проблемы!>>> NoeR++ <<<
PM MAIL ICQ   Вверх
Quadr0
Дата 5.6.2005, 14:15 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











...

Это сообщение отредактировал(а) Quadr0 - 14.7.2011, 21:08
  Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0570 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.