Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 122
от 15.05.2005, 09:50

Администратор:Калашников О.А.
В номере:Вопросов: 3, Ответов: 6


Вопрос № 20599: Как найти все ListBox - ы, имя которых начинается с "Channel_" и удалить из них строку, значение которой расно строковой переменной S ?...
Вопрос № 20620: Аъек цдочъпу. Амномъ я келз амп ичимх: Кле лемюсмдукм мнуъчпщ имлъмйщлме ноуймтелуе ноуиоинйёллме и мълмалмх рмоке (лчсмдупъз ленмъоедъпаеллм а ъчкмх рмоке). Иомке лежм лч рмоке юядеп лчсмдупъз леъимйщим илмнми у пеиъпмаме милм. Ичиук ънмъмюм...
Вопрос № 20621: Всем здрасти. Вопервых извените за прошлый вопрос. А вопрос у меня вот какой: Мне необходимо описать консольное приложение прикркплённое к основной форме (находится непосредственно в самой форме). Кроме него на форме будет находится несколько...

Вопрос № 20599
Как найти все ListBox - ы, имя которых начинается с "Channel_" и удалить из них строку, значение которой расно строковой переменной S ?
Отправлен: 09.05.2005, 11:25
Вопрос задал: source (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: John Freeman
Здравствуйте, source!
1) Найти - Form.FindComponent (по строке имени, не работает с масками, так что перебор)
2) Второе - удалить только перебором for c:=0 to listboxx.items.count-1 do ...
Ответ отправил: John Freeman (статус: Профессор)
Отправлен: 10.05.2005, 14:55

Отвечает: wils0n
Здравствуйте, source!
Эта процедура оббегает все компоненты на форме и смотрит кто из низ ЛистБокс и у кого надо удаляет строку (одну!!!).
procedure TForm1.KillStringFromListBoxes(s:string);
var i,idx:integer;
temp:TListBox;
begin
for i:=0 to ComponentCount-1 do begin // пробегаем все компоненты данной формы. Если эта процедура будет реализована где-нибудь в другом месте, а не в модуле формы, то надо ещё будет передать ссылку на форму и потом обращаться как FormXY.Components[i] и т.д.
if (Components[i] is TListBox) and (pos('Channel_',Components[i].Name)=1) then begin //вытаскиваем поодиночке все ListBox'ы да такие, чтоб в начале их имени стояло 'Channel_'
temp:=TListBox(Components[i]); // Для удобства обзовём ЛистБокс переменной temp
idx:=temp.Items.IndexOf(s); // смотрим, если нужная строка s в Боксе
if (idx>-1) then temp.Items.Delete(idx); // если есть, то убиваем***
end;
end;
end;
***как видно из листинга, убивается только одна строка, если надо убить из Бокса все строки, которые равны строке s, то тело выполнения условия будет:
repeat
temp:=TListBox(Components[i]); // Для удобства обзовём ЛистБокс переменной temp
idx:=temp.Items.IndexOf(s); // смотрим, если нужная строка s в Боксе
if (idx>-1) then temp.Items.Delete(idx); // если есть, то убиваем***
until idx<0;
Ответ отправил: wils0n (статус: 1-ый класс)
Отправлен: 13.05.2005, 18:22


Вопрос № 20620
Аъек цдочъпу.
Амномъ я келз амп ичимх: Кле лемюсмдукм мнуъчпщ имлъмйщлме ноуймтелуе ноуиоинйёллме и мълмалмх рмоке (лчсмдупъз ленмъоедъпаеллм а ъчкмх рмоке). Иомке лежм лч рмоке юядеп лчсмдупъз леъимйщим илмнми у пеиъпмаме милм.
Ичиук ънмъмюмк кмтлм аьнмйлупщ дчлляв цчдчбя.
Еъйу амцкмтлм а мпаепе яичцчпщ ноукеольх йуъпулж.
Цчочлее юйчжмдчоел!!!
Отправлен: 10.05.2005, 01:36
Вопрос задал: GREEDY (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: Jadd
Здравствуйте, GREEDY!
Сочувствую :). Сам этим болел. Врачи помогли :). Или само прошло? Вообщем не важно. Но, мой совет, смена кодировки или попытка писать хотя бы транслитов здорово облегчила бы всем жизнь ;)
Ответ отправил: Jadd (статус: 3-ий класс)
Отправлен: 10.05.2005, 18:10

Отвечает: Boriss
Здравствуйте, GREEDY!
А действительно консольным оно должно быть? Может сделать просто эмуляцию консольного? То есть черное и шрифт подобрать
Ответ отправил: Boriss (статус: Профессор)
Отправлен: 11.05.2005, 17:08


Вопрос № 20621
Всем здрасти.
Вопервых извените за прошлый вопрос.
А вопрос у меня вот какой: Мне необходимо описать консольное приложение прикркплённое к основной форме (находится непосредственно в самой форме). Кроме него на форме будет находится несколько кнопок и текстовое окно.
Каким способом можно выполнить данную задачу.
Если возможно в ответе указать примерный листинг.
Заранее благодарен!!!
Отправлен: 10.05.2005, 02:11
Вопрос задал: GREEDY (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: X
Здравствуйте, GREEDY!
Настоящее консольное приложение прикрепить к форме нельзя(если я не прав то буду рад услышать как это сделать), можно например сделать подобие консоли с помощю Memo.
В приложении функции ввода(с выводом я думаю и так всё ясно)

Приложение:

Ответ отправил: X (статус: 3-ий класс)
Отправлен: 10.05.2005, 14:23

Отвечает: Jadd
Здравствуйте, GREEDY!
В свою очередь, разясните, пожалуйста, следующий тезис: " консольное приложение прикркплённое к основной форме". Что сие значит? Не совсем понятно. Если речь идет о вызове консольной программы, тогда тут есть несколько вариантов. 1) (правильный) функция WinAPI - CreateProcess. 2) (менее правильный, но все же) функция WinAPI - winexec. 3) (тоже сойдет) ShellExecute. Описание параметров смотрите в MSDN. Если нужно написать консольное приложение, которое открывает форму, то тут нужно иначе делать. Расшифруйте, пожауйста.
Ответ отправил: Jadd (статус: 3-ий класс)
Отправлен: 10.05.2005, 18:07


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Яндекс


http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiplus
Отписаться

В избранное