Общение без границ

Главная | Регистрация | Вход
Пятница, 19.04.24, 06:21
Приветствую Вас Странник | RSS
Авторизация
Друзья
Поиск

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

  • Страница 1 из 1
  • 1
Модератор форума: [C]RaSh, Harry_Haller  
Форум хорошего настроения и общения » IT-технологии » Программирование » Компонент ComboBox в Delphi (Нужна помасчь)
Компонент ComboBox в Delphi
[C]RaShДата: Четверг, 19.06.08, 22:22 | Сообщение # 1
АндрейkA
Группа: Администраторы
Сообщений: 1045
Награды: 3
Репутация: 79
Статус: Offline
вопсчем такая вещь. На форме есть ComboBox1 и Label1. С помощью этой строчки кода
Quote
label1.Caption := ComboBox1.Items.Strings[ComboBox1.ItemIndex];

выбранные строчки в ComboBox1 отображаются в Label1 (иллюстрация и исходник прилогаеться).

НЕОБХОДИМО, не меняя этой строчки кода (другие добавлять можно, но эту не менять), сделать так, чтобы при выборе строчки в ComboBox1 в Label1 отображались другие надписи, в соответствии с выбранной строчкой.

Т.Е. у меня в ComboBox1 заданы столбик слов: "Строка 1", "Строка 2", "Строка 3" и так далее. Нжно чтобы при выборе "Строчка 1" в Label1 отображалось например "Страница 1", при выборе "Строка 2" в Label1 отоброжалось "Страница 2" и так далее... Надеюсь понятно обьяснил..

Прикрепления: 6937583.jpg (3.0 Kb) · Project.rar (2.9 Kb)


Рyкописи, может быть, и не гоpят. Зато диски С отлично фоpматиpyются.
 
OXYGENEДата: Пятница, 20.06.08, 11:57 | Сообщение # 2
Соучастнег
Группа: Проверенные
Сообщений: 549
Награды: 0
Репутация: 33
Статус: Offline
непойму зачем тебе это.. особенно не меняя строки...
procedure TForm2.ComboBox1Change(Sender: TObject);
var
m: array[0..3] of string;
begin
m[0]:='Страница1';
m[1]:='Страница2';
m[2]:='Страница3';
label1.Caption := ComboBox1.Items.Strings[ComboBox1.ItemIndex];
label1.Caption:= m[Combobox1.itemindex];
end;

соответствонно item комбобокса:
Строка1
Строка2
Строка3





 
[C]RaShДата: Пятница, 20.06.08, 13:20 | Сообщение # 3
АндрейkA
Группа: Администраторы
Сообщений: 1045
Награды: 3
Репутация: 79
Статус: Offline
OXYGENE, Спасибо, друг. Очень надо ... Балуюсь я тут немного... А не знаешь как определить, какие Com порты актывны? в данный момент, т.е. к ним что то подключено, модем например..

Рyкописи, может быть, и не гоpят. Зато диски С отлично фоpматиpyются.
 
[C]RaShДата: Пятница, 20.06.08, 14:22 | Сообщение # 4
АндрейkA
Группа: Администраторы
Сообщений: 1045
Награды: 3
Репутация: 79
Статус: Offline
Нашел. Подключеные модемы в винХР определяються следующей процедурой
Quote

procedure TForm1.FormCreate(Sender: TObject);
var
buffer: Pointer;
devices: LPRasDevInfo;
devSize, ndevs: Integer;
begin
devSize := 0;
ndevs := 0;
if RasEnumDevices(nil, devSize, ndevs) <> ERROR_BUFFER_TOO_SMALL then
ShowMessage('Ошибка в процедуре RasEnumDevices');
buffer := AllocMem(devSize);
try
devices := buffer;
devices^.dwSize := SizeOf(TRasDevInfo);
if RasEnumDevices(buffer, devSize, ndevs) = 0 then
begin
while ndevs > 0 do
begin
cboDevice.Items.Add(Format('%s=%s', [devices^.szDeviceName, devices^.szDeviceType]));
Inc(devices);
Dec(ndevs);
end;
end
else
ShowMessage('Ошибка в процедуре RasEnumDevices');
finally
FreeMem(buffer);
end;
end;

Снова здесь используеться компонент ComboBox (cboDevice).

Теперь другой вопрос, как, найденному таким способом модему задать строку инициализации (она в реестре храниться)?


Рyкописи, может быть, и не гоpят. Зато диски С отлично фоpматиpyются.
 
OXYGENEДата: Пятница, 20.06.08, 14:52 | Сообщение # 5
Соучастнег
Группа: Проверенные
Сообщений: 549
Награды: 0
Репутация: 33
Статус: Offline
Я толком не работал с ком портами... RASAPI тут нужен... ну думаю порядок такой. Строка хранится в реестре. для этого тебе нужен TRegistry в нём есть методы для чтения и записи значений в реестре... Зная путь где эта строка находится, считываеш её и потом каким там макаром иницилируеш мопед. С ком портами работа такая же как и с файлами.. пишиш-читаеш. Используются AT-команды мопеда!






Сообщение отредактировал OXYGENE - Пятница, 20.06.08, 15:07
 
[C]RaShДата: Пятница, 20.06.08, 18:51 | Сообщение # 6
АндрейkA
Группа: Администраторы
Сообщений: 1045
Награды: 3
Репутация: 79
Статус: Offline
OXYGENE, это все понятно ... порядок я знаю, я знаю как это все реализовать по отдельности, но не знаю как все связать вместе .. будем думать

Рyкописи, может быть, и не гоpят. Зато диски С отлично фоpматиpyются.
 
OXYGENEДата: Пятница, 20.06.08, 19:30 | Сообщение # 7
Соучастнег
Группа: Проверенные
Сообщений: 549
Награды: 0
Репутация: 33
Статус: Offline
ну строка инициализации это просто строка.... её походу надо передать когда открываеш порт.... вроде так. я в этом не селён




 
Форум хорошего настроения и общения » IT-технологии » Программирование » Компонент ComboBox в Delphi (Нужна помасчь)
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2024 | Хостинг от uCoz