Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #31  
Старый 25.08.2008, 16:26
Drozh Drozh вне форума
Активный
 
Регистрация: 12.06.2008
Сообщения: 313
Репутация: 40
По умолчанию

Ну первое, я бы не стал во второй форме писать этот код...
Просто в кнопке Add поставил бы свойство ModalResult в mrOk а в первой рассматривал то что возвратил ShowModal
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
 ComboBox: TComboBox;
begin
 if Form2.ShowModal = mrOk then
 begin
  ComboBox :=
   FindComponent(Format('ComboBox%d', [RadioGroup1.ItemIndex +1 ])) as TComboBox;
  ComboBox.Text := //Text;
  ComboBox.Items.Add(//Text);
 end;
end;

А во втором случае у тебя неразбериха с индексами (да и размести это кнопку на 1 форме)
Код:
procedure TForm1.Button2Click(Sender: TObject);
var
 Index: Integer;
 ComboBox: TComboBox;
begin
 ComboBox :=
   FindComponent(Format('ComboBox%d', [RadioGroup1.ItemIndex +1 ])) as TComboBox;

  if ComboBox.Items.Count > 1 then
  begin
   Index := ComboBox.ItemIndex;
   ComboBox.Items.Delete(Index); // удалили строку Index инкрементировался автоматически
   ComboBox.ItemIndex := Index;
  end
  else
   ShowMessage('Вы хотите удалить последнюю запись');
end;
Ответить с цитированием
  #32  
Старый 25.08.2008, 17:42
Beast Beast вне форума
Прохожий
 
Регистрация: 23.08.2008
Сообщения: 47
Репутация: 10
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
 Index: Integer;
 ComboBox: TComboBox;
begin
 ComboBox := FindComponent(Format('ComboBox%d', [RadioGroup1.ItemIndex +1 ])) as TComboBox;

 if ComboBox.Items.Count > 1 then
 begin
  Index := ComboBox.ItemIndex;

  if ComboBox.Items.Count = Index+1 then
  begin
   ComboBox.Items.Delete(Index);
   ComboBox.ItemIndex := 0
  end
  else
   ComboBox.Items.Delete(Index);
   ComboBox.ItemIndex := Index;
  end
 else
  ShowMessage('Невозможно удалить последнюю запись!!!');
  ComboBox.SetFocus;
end;
Вторую часть подкорректировал данным образам, все работает. Спасибо всем! Отдельное спасибо Drozh!!!

Последний раз редактировалось Beast, 25.08.2008 в 18:28.
Ответить с цитированием
  #33  
Старый 25.08.2008, 22:46
Beast Beast вне форума
Прохожий
 
Регистрация: 23.08.2008
Сообщения: 47
Репутация: 10
По умолчанию

А почему в ComboBox'ы со свойством Style - csDropDown из файла можно записать информацию, а с другими стилями НЕЛЬЗЯ????
Ответить с цитированием
  #34  
Старый 25.08.2008, 22:48
Drozh Drozh вне форума
Активный
 
Регистрация: 12.06.2008
Сообщения: 313
Репутация: 40
По умолчанию

Потому, что остальные стили не поддерживают изменение списка
Ответить с цитированием
  #35  
Старый 25.08.2008, 23:25
Beast Beast вне форума
Прохожий
 
Регистрация: 23.08.2008
Сообщения: 47
Репутация: 10
По умолчанию

Можно тогда как нибудь запретить ввод текста в ComboBox'ы, а оставить только выбор, если свойство Style оставить csDropDown?
Ответить с цитированием
  #36  
Старый 27.08.2008, 18:06
Beast Beast вне форума
Прохожий
 
Регистрация: 23.08.2008
Сообщения: 47
Репутация: 10
По умолчанию

Мне необходимо запретить ввод информации с клавиатуры, изменение стиля тут непрокатывает (поле в ComboBox'е сразу становится пустым).

Если в событии OnKeyPress написать:
Key := #0;

Получается что-то вроде того, что мне надо, но как можно запретить вставку из буфера?
Ответить с цитированием
  #37  
Старый 16.04.2009, 16:40
Аватар для MaryG
MaryG MaryG вне форума
Прохожий
 
Регистрация: 17.01.2007
Адрес: Далеко, за пределами России
Сообщения: 16
Репутация: 10
По умолчанию

Цитата:
Сообщение от Drozh
Проверь правильность созданного файла, у меня все работает)
У меня тоже всё получилось...а вот как выбрать из Комбобокса нужный атрибут (имя)?
__________________
Пусть печатают работяги, программеры - люди ленивые! А я предлагаю перемирие, процедурой выпивания и закусывания
Ответить с цитированием
  #38  
Старый 16.04.2009, 17:09
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Сильно, вы бы еще более древнюю тему откопали. Теперь придется всю ее перечитывать.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #39  
Старый 13.04.2010, 00:01
Slot Slot вне форума
Прохожий
 
Регистрация: 12.04.2010
Сообщения: 2
Репутация: 10
По умолчанию Ребята помогите!!!

Есть 5 combobox-ов с определенными значениями. Когда сделан выбор определенной позиции из каждого combobox-а нужно чтобы загрузился определенный avi или mov файл. Помоги плиз
Ответить с цитированием
  #40  
Старый 13.04.2010, 00:23
Аватар для Лунтик-Некрофил
Лунтик-Некрофил Лунтик-Некрофил вне форума
Начинающий
 
Регистрация: 28.09.2009
Сообщения: 165
Репутация: 12
По умолчанию

Код:
case combobox.ItemIndex of
-1: showmessage('Файл не выбран');
0: загружаешь файл...;
1:  ...;
2: ...;
end;
Если список динамический, то лучше всего обращаться по названию кнопки
Код:
var i:integer;
...
if combobox.itemindex<>-1 then begin
i:=combobox.itemindex;
filename:= combobox.items[i];
//работа с filename
end;

Суть объяснил, далее думаю сам разберёшся, если че - пиши.
__________________
Алкоголик-аморал, явная угроза обществу
Блин, я уже местный, а все равно нифига не знаю...
Ответить с цитированием
  #41  
Старый 19.04.2010, 13:01
Slot Slot вне форума
Прохожий
 
Регистрация: 12.04.2010
Сообщения: 2
Репутация: 10
По умолчанию

Спасибо, но ты объяснил, как работать с одним ComboBox, а у меня их пять. Попробую объянить по другому

ComboBox1 - 1. 2
2. 5
3. 9

ComboBox2 - 1. демонтаж
2. монтаж
3. рекострукция
ComboBox3 - ....
ComboBox4 - ....
ComboBox5 - ....
И т.д.

И при выборе в каждом из них определенной позиции, нужно загрузить определннный файл, формата avi.

П.С. Извини, может глупый вопрос, но я пытаюсь разобраться((. Заранее спасибо.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 06:57.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter