| Цитата(Femida @ 22.3.2005, 06:19) | вопрос: а зачем вторая форма? Если надо вывести меню "настройка", то его удобнее выводить в CheckBox, чтобы был выбор пунктов. Только не легче ли сделать этот checkBox на отдельной Panel и при выборе где нибудь "настройка" все остальное делать не видимым, а эту ? Проще и удобнее. Я так понял вторая форма нужна лишь для настройки, так зачем "губить" ради этого форму? |
Пойми меня правильно я не только хочу понять как сделать диалог настройка но и еще научиться программировать. Панелькой я бы и сам сделал но вот таким способом который предложил Посейдон немного сложнее вот я и хочу понять все тонкости. Добавлено @ 02:03
| Цитата(Poseidon @ 22.3.2005, 04:05) | | Цитата(Alex103 @ 22.3.2005, 02:28) | | Я просто не могу подклячить 2 форму к первой так как уже подключил 1 к 3 и как только я юзах для 3 формы прописываю 1 то мне выдаеться ошибка. |
Значит так. Я обычно делаю следующим образом: В unit главной формы в разделе interface в Uses (там где все юниты прописаны) прописываю все unit проекта. А уже в дополнительных модулях прописываю юнит главной формы в разделе implementation, т.е там где по сути код. В противном случае генерируется фатальная ошибка "Circular unit reference to '<element>'". Видимо именно с ней ты и столкнулся.
Если ничего не понятно, то вот пример:
Unit главной формы: | Код | unit MainUnit;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Unit2, Unit3, Unit4; // здесь все и прописываеся.
type TForm1 = class(TForm) private { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
// здесь процедуры и функции
end. |
Unit НЕглавной формы:| Код | unit Unit2;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;
type TForm2 = class(TForm) private { Private declarations } public { Public declarations } end;
var Form2: TForm2;
implementation
{$R *.dfm}
Uses MainUnit // здесь прописан Unit главной формы.
// здесь процедуры и функции
end. | |
Именно эта ошибка у меня и вылетала. Спасибо тебе огромное. Вот тебе + к репутации!!!! |