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

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Появление Label и Edit 
:(
    Опции темы
KPEHDEL
  Дата 12.6.2010, 08:41 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Есть свиток, с пунктами "Вход" и "Регистарция". Есть 2 Label и 2 Edit.
Хочу сделать, чтобы пока пользователь не выбрал "Вход" или "Регистарция" эти окна были невидимы, при выборе появлялись на форме. Делаю так:
В разделе фар указываю новую переменную
var
  F1: TF1;
  Enter: Label1, Label2, Edit1, Edit2; //вот эта строчка.
Жму на свиток, перехожу в Events, открываю OnChange и там в редакторе окгда пишу следующее:
If F1.ComboBox1.ItemIndex 1 do
Visible Enter:=True then Visible Enter:=False;

PS:F1 - это форма.
Поясните пожалуйста, что делаю не так и как правильно.
PM MAIL WWW ICQ   Вверх
cyberstream
Дата 12.6.2010, 09:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Если лейблы и едиты ты добавил на форму, они описаны в секции
Код

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

Вытри
Код

  Enter: Label1, Label2, Edit1, Edit2; 

Видимость меняется 
Код

Label1.Visible := False

Полагаю, лучше раздать им Visible := False в Object Inspector.

Пиши, читай help и копипасть внимательней. 
--------------------
Не знаешь кого спросить? - Спроси google!
PM MAIL   Вверх
KPEHDEL
Дата 12.6.2010, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Ещё один схожий вопрос, поэтому не буду создавать новую тему.
Есть ListBox с 15ю пунктами и Panel1, которая должна появляется при выборе одно из пункта (строки).
Делаю так:
Код

procedure TF4.ListBox1Click(Sender: TObject);
begin
 If F4.ListBox1.Lines 1 do //форма 4 ListBox 1, строка
 Panel1.Visible := True // то Panel1 видимая

end;

end.

Я не правильно указал строку, как правильно? Или может, есть более разумные способы решения этого действия.

PM MAIL WWW ICQ   Вверх
cyberstream
Дата 12.6.2010, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Самый разумный способ - кликнуть по ListBox на своей форме, нажать F1, среди Properties компонента ознакомиться с ItemIndex и Example-ом к нему, подсказывающим как правильно указывать строку. smile 
--------------------
Не знаешь кого спросить? - Спроси google!
PM MAIL   Вверх
PsiMagistr
Дата 13.6.2010, 14:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



KPEHDEL, есть такое свойство у списков: ItemIndex. Хранит номер выделенного элемента, причем нумерация начинается с нуля. То есть, выделил ты 1ый элемент списка -  свойство ItemIndex получило значение 0. Если ни один из элементов не выделен там хранится значение -1. Вот твой код:

Код

 If F4.ListBox1.Lines 1 do //Кстати, не можешь объяснить, зачем тебе понадобилось полное обращение к объекту: 

//ИмяФормы.ИмяОбъекта.Свойство?  Если здесь можно написать просто ИмяОбъекта.Свойство.


//Учти, что нет и не было свойства Lines у списков. 

//Что такое конструкция if .... do? Не знаю такой. Ты имел ввиду if ... then ... ?




Вот мой код:

Код

procedure TF4.ListBox1Click(Sender: TObject);
begin
if F4.ListBox1.ItemIndex <> -1  then  //Если ItemIndex не равен -1 (это означает, что в списке выделен какой то (любой из) элемент, то:
 Panel1.Visible := True; //Делаем панель видимой.
end;


Это сообщение отредактировал(а) PsiMagistr - 13.6.2010, 14:42


--------------------
"Арфы нет? Возьмите бубен!

Ребята, будем жить!"

 (с) "В бой идут одни старики"

---

"ИЕ" - один из самых сумасшедших браузеров в нашей галактике.
PM MAIL   Вверх
bems
Дата 13.6.2010, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



PsiMagistr, F4 тут лишнее

Цитата(PsiMagistr @  13.6.2010,  14:40 Найти цитируемый пост)
procedure TF4.ListBox1Click(Sender: TObject);
begin
if F4.ListBox1.ItemIndex <> -1  then  //Если ItemIndex не равен -1 (это означает, что в списке выделен какой то (любой из) элемент, то:
 Panel1.Visible := True; //Делаем панель видимой.
end;





--------------------
Обижено школьников: 8
PM MAIL   Вверх
PsiMagistr
Дата 13.6.2010, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



bems, совершенно верно. Я сохранил полное обращение, поскольку так было у  KPEHDEL.



--------------------
"Арфы нет? Возьмите бубен!

Ребята, будем жить!"

 (с) "В бой идут одни старики"

---

"ИЕ" - один из самых сумасшедших браузеров в нашей галактике.
PM MAIL   Вверх
KPEHDEL
Дата 13.6.2010, 19:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Большое спасибо за помощ! 
Всё хорошо и понятно.
Правда у мну по плану к каждой ItemIndex, своя Panel. Просто в коде изменил <> -1 на = 1 и всё работает.

Это сообщение отредактировал(а) KPEHDEL - 13.6.2010, 19:19
PM MAIL WWW ICQ   Вверх
PsiMagistr
Дата 13.6.2010, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(KPEHDEL @  13.6.2010,  19:14 Найти цитируемый пост)
Правда у мну по плану к каждой ItemIndex, своя Panel. Просто в коде изменил <> -1 на = 1 и всё работает.


Ну ка ну ка.  smile 

KPEHDEL, Дружище, поставь сюда код, дай ка взглянуть. А то у меня подозрение.




--------------------
"Арфы нет? Возьмите бубен!

Ребята, будем жить!"

 (с) "В бой идут одни старики"

---

"ИЕ" - один из самых сумасшедших браузеров в нашей галактике.
PM MAIL   Вверх
KPEHDEL
Дата 15.6.2010, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



А нет, не всё так гладко как я думал.
Код

procedure TF4.ListBox1Click(Sender: TObject);
begin
if ListBox1.ItemIndex = 0  then
 GroupBox1.Visible := True;
 GroupBox2.Visible := True;
end;

Всё бы ничего, но вскоре я заметил, что если выбрать эту строку, а потом выбрать другую, снвоа свойство Visible компонента не будет False.
Попробывал сделать так:
Код

procedure TF4.ListBox1Click(Sender: TObject);
begin
if ListBox1.ItemIndex = 0  then
 GroupBox1.Visible := True;
 GroupBox2.Visible := True;
else
GroupBox1.Visible := False;
GroupBox2.Visible := False;


В результате строка else гроздно покраснела и послала меня подальше.
Выделил else, нажал F1, посмотрел примеры и не понял чё не так.
Жду вашей помощи.

И заодно глупый попутный вопрос. Если жму F9, а форма загадочно мигает и ничего не появляется (не компилится), что это значит и как исправить?

Это сообщение отредактировал(а) KPEHDEL - 15.6.2010, 12:53
PM MAIL WWW ICQ   Вверх
bems
Дата 15.6.2010, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



KPEHDEL, компоненты не при чем. Ты языка не знаешь.
Читай учебники.

Добавлено через 2 минуты и 6 секунд
Модератор: Тема закрыта, как не представляющая интереса.

Это сообщение отредактировал(а) bems - 15.6.2010, 13:19


--------------------
Обижено школьников: 8
PM MAIL   Вверх
  
Закрытая темаСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

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

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

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

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


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

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


 




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


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

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