![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Гость_Виктор |
|
|||
|
Unregistered |
Здраствуйте Вот тренирусь потихоньку- Хочу чтобы Memo1 было доступно и в основном теле программы а как это сделать? В чем ошибка?
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Memo1.Visible:=true; end; begin If Memo1.Visible:=true then ShowMessage('Âñå îê'); end. |
|||
|
||||
| s-mike |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 425 Регистрация: 16.1.2005 Где: Киев Репутация: 9 Всего: 16 |
Так не выйдет, потому что к моменту вызова основного блока форма и все компоненты на ней еще не созданы.
|
|||
|
||||
| Poseidon |
|
||||||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Ошибка № 1
оператор ":=" - означает присваивание. Для сравнения нужно использовать "=" А теперь об основном:
PS. Что бы не было ошибки (в данном примере) undeclired Memo1 пиши не
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
||||||
|
|||||||
| Blindman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 24.12.2004 Где: НиНо Репутация: нет Всего: нет |
Так как ты написал точно не заработает. Вот корректный пример:
procedure TForm1.Button1Click(Sender: TObject); begin Memo1.Visible:=true; If Memo1.Visible=true then ShowMessage('Ok'); end; А можно и так: If Memo1.Visible then ShowMessage('Ok'); |
|||
|
||||
| Poseidon |
|
||||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Blindman требуется
Причем вызывать процедуру Myprocedure можно из любой процедуры или функции модуля. -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
||||
|
|||||
| Coder |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 13.12.2004 Репутация: 5 Всего: 11 |
а не проще эту процедуру прописать в разделе public, дабы каждый раз не упоминать о Form1? да и с такой процедурой меньше будет проблем при вызове ее из других модулей. Гость_Виктор, зачем тебе Memo1 в основном теле программы? Он же (Мемо) объявлен в классе Form1 и будет доступен из любой процедуры этой форму для любых действий и проверок... |
||||
|
|||||
| Poseidon |
|
||||||||||||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
2Гость_Виктор Укажи что именно ты хочешь от своей программы, а мы поможем тебе, как это сделать. Добавлено @ 18:28
2Гость_Виктор Укажи что именно ты хочешь от своей программы, а мы поможем тебе, как это сделать. -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
||||||||||||
|
|||||||||||||
| Гость_Viktor |
|
|||
|
Unregistered |
Срастбо за ответы а теперь подробнее можно как именно ее в раздели паблик описать- чтбы была доступнее всем.
Poisodon понял что я хочу |
|||
|
||||
| Blindman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 24.12.2004 Где: НиНо Репутация: нет Всего: нет |
Просто вставляешь в этот раздел её описание. Например:
unit Unit1; ........................ private { Private declarations } public { Public declarations } Procedure MyProcedure; end; ......................... procedure Myprocedure; // создаем наше событие в отдельной процедуре begin If Form1.Memo1.Visible then ShowMessage('что-то там'); end; end. Всё, процедуру можно вызавать в любом месте программы. |
|||
|
||||
| Poseidon |
|
||||||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Blindman, опередил! Только вот не
Это сообщение отредактировал(а) Poseidon - 26.3.2005, 01:41 -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
||||||
|
|||||||
| Blindman |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 24.12.2004 Где: НиНо Репутация: нет Всего: нет |
Разве в том же самом модуле, где объявлена процедура, так необходимо дописывать предка? |
||||||
|
|||||||
| Poseidon |
|
||||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
||||
|
|||||
| Blindman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 24.12.2004 Где: НиНо Репутация: нет Всего: нет |
Учту на будущее. Спасибо.
|
|||
|
||||
| Гость_Viktor |
|
|||
|
Unregistered |
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, Menus; type TForm1 = class(TForm) RichEdit1: TRichEdit; MainMenu1: TMainMenu; N1: TMenuItem; N2: TMenuItem; N3: TMenuItem; procedure N3Click(Sender: TObject); private { Private declarations } public procedure Val; { Public declarations } end; var Form1: TForm1; implementation procedure TForm1.val; begin Form1.Richedit1.Clear; Form1.RichEdit1.Lines.LoadFromFile('c:\65'); Form1.RichEdit1.Font.Size:=13; Form1.RichEdit1.Font.Name:='Lucida Console' end; {$R *.dfm} procedure TForm1.N3Click(Sender: TObject); begin Showmessage('Ïîêà!'); Close; end; begin Val; end. |
|||
|
||||
| Гость_Viktor |
|
|||
|
Unregistered |
expected ( but found; ошибка!!!
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |