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

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


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

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

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

Выпуск № 111
от 30.04.2005, 02:20

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


Вопрос № 20168: Уважаемые господа эксперты здравствуйте! Очень нужны книги Архангельского по програмированию в среде Delphi (бесплатные) в первую очередь самоучители по Delphi 6, 7. Подскажите хоть несколько ссылок. Заранее признателен. ..
Вопрос № 20173: Здрасти.Я пытаюсь сделать программу-собеседник.У меня такой вопрос.Как сделать так чтобы Текст введённый в Edit по нажатии кноки находил в массивах по ключевым словам этого текста и выводил соответсвующий ответ в Memo или в ListBox?Ваш ответ мне очен...
Вопрос № 20182: гДПЮБЯРБСИРЕ СБЮФЮЕЛШЕ ЩЙОЕПРШ. с ЛЕМЪ РЮЙЮЪ ОПНАКЕЛЮ. мЮОХЯЮК ОПХКНФЕМХЕ ДКЪ НАПЮАНРЙХ ДЮММШУ. оНЪБХКЮЯЭ МЕНАУНДХЛНЯРЭ ХЛОНПРХПНБЮМХЪ АЮГШ Б ТНПЛЮРЕ foxPro ГЮРЕЛ ЕЙЯОНПРХПНБЮРЭ ПЕГСКЭРЮР НАПЮАНРЙХ Б РЮЙНЛ-ФЕ ТНПЛЮРЕ. б ОПХКНФЕМХХ ХЯОНКЭГНБЮК InterBa...
Вопрос № 20187: бЯЕУ АКЮЦ БЮЛ СБФЮЕЛШЕ ЩЙЯОЕПРШ. с ЛЕМЪ 3 БНОПНЯЮ. 1. form6.QRLabel15.Caption:=edit1.Text+' ЦНД '+combobox1.Text+' ЛЕЯЪЖ' ; ЙНЛОНМЕМР-QRLabel МЕ ГМЮЙНЛ,ОНДЯЙЮФХРЕ ВРН ЩРН Х ЦДЕ ЕЦН ХЯЙЮРЭ? 2. form6.quickrep1.Preview; ВРН Щ...
Вопрос № 20202: При выводе списка каналов IRC сервера в IRC клиентах некоторые каналы имеют цветное графическое оформление. В каком компоненте это можно отобразить и как. Если не трудно, то приведите пожалуйста кусок кода....

Вопрос № 20168
Уважаемые господа эксперты здравствуйте! Очень нужны книги Архангельского по програмированию в среде Delphi (бесплатные) в первую очередь самоучители по Delphi 6, 7. Подскажите хоть несколько ссылок. Заранее признателен.
Отправлен: 24.04.2005, 08:26
Вопрос задал: Петров Василий Владимирович (статус: Посетитель)
Всего ответов отправлено: 3

Отвечает: rusfaq.ru
Здравствуйте, Петров Василий Владимирович!
сходи на _фтп://217.107.209.40/ там есть достаточно литературы по делфям
Ответ отправил: rusfaq.ru (статус: 4-ый класс)
Отправлен: 24.04.2005, 10:33

Отвечает: Jadd
Здравствуйте, voinvvs!
Попробуй поискать на форуме forum.netz.ru. Я не ручаюсь, что там есть именно то, что ты ищешь, но книги по програзму на дельфях я там видел. Успехов.
Ответ отправил: Jadd (статус: 1-ый класс)
Отправлен: 24.04.2005, 11:53

Отвечает: Malish
Здравствуйте, Петров Василий Владимирович!
Не уверен что Архангельский, но самоучитель : http://coder.h15.ru/?page=books&sec=del
http://www.ekniga.com.ua/cgi-bin/s.cgi?act=s§ion=6&an=&stype=2&text=Delphi
и тут глянь http://www.rus-lib.ru/cgi/main.pl?id=books&level=28&px=21&py=40
Ответ отправил: Malish (статус: Студент)
Отправлен: 24.04.2005, 13:25


Вопрос № 20173
Здрасти.Я пытаюсь сделать программу-собеседник.У меня такой вопрос.Как сделать так чтобы Текст введённый в Edit по нажатии кноки находил в массивах по ключевым словам этого текста и выводил соответсвующий ответ в Memo или в ListBox?Ваш ответ мне очень нужен. Заранее спосибо.
Отправлен: 24.04.2005, 09:32
Вопрос задал: zeromaps (статус: Посетитель)
Всего ответов отправлено: 6

Отвечает: Stamm
Здравствуйте, zeromaps!
Var i:integer;
s:string;
a:array[1..2,1..100] of string;{Массив Слов и ответов}
begin
for i:=1 to 100 do
if Pos(s,a[1,i])<>0 then Memo1.Lines.Add(a[2,i]);
end;
Ответ отправил: Stamm (статус: 1-ый класс)
Отправлен: 24.04.2005, 11:24
Оценка за ответ: 4

Отвечает: Jadd
Здравствуйте, zeromaps!
Если я правильно понял, то нужно провести лексический анализ, так? Или поиск по введеному слову? Давай рассмотрим все эти варианты. В первом случае нужно разбить введеный текст на лексемы (допустим, что это несколько слов). Затем в цикле произвести поиск в массиве на совпадение, и, в случае обнаружения искомого слова, прерывать работу цикла и выдавать то, что нужно. И так для каждого слова. Во втором варианте все примерно то же самое, но количество операций сокращается до минимума. Во-первых, не нужно делать анализ введеного текста, а просто привести к какому-то виду (например все в CAPS), а затем в цикле же произвести поиск. Все очень просто. Надеюсь я ответил подробно, если нужны конкретные примеры кода или я что-то упустил - пиши мне на мыло.
Ответ отправил: Jadd (статус: 1-ый класс)
Отправлен: 24.04.2005, 11:58

Отвечает: X
Здравствуйте, zeromaps!
Как я понял вам нужно искать в тексте заданные слова - это делает функция pos(что,где) выдаёт номер первого символа найденной фразы.
Ответ отправил: X (статус: 2-ой класс)
Отправлен: 24.04.2005, 17:18

Отвечает: Malish
Здравствуйте, zeromaps!
Запись которая состоит из вопроса(ключевое слово) и ответа
type
Key = record
Key_vopr : string;
Key_otv : string;
end;
var
Slova : array [0..100] of Key; //Масив записей

// Массив лучше хранить в отдельном файле, так его можно будет учить
//Я на быструюю руку сделал так
procedure TForm1.FormCreate(Sender: TObject);
begin
Slova[0].Key_vopr := 'Сколько';
Slova[0].Key_otv := 'Столько';
end;
//а это само сравнение
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
flag :boolean;
begin
flag := false;
Memo1.Lines.Add(Edit1.Text);
for i:= 0 to 100 do
begin
if(Pos(Slova[i].Key_vopr,Edit1.Text)>0) then //проверяет есть ли ключевые слова из
//масива в строке Edit1.Text
begin
Edit1.Text := Slova[i].Key_otv; //если находит выставляет его и прекращает цикл
flag := true;
break;
end;
end;
if (flag=false) then // Это на случай если нет ключа у тебя в массиве
Memo1.Lines.Add('Что-что?');
end;
Ответ отправил: Malish (статус: Студент)
Отправлен: 24.04.2005, 22:55

Отвечает: sir henry
Здравствуйте, zeromaps!
Искренне надеюсь, что Вы для собеседника уже завели какую-то базу данных. :)
Разбиваете текст в Edit'e на отдельные слова, потом по каждому из слов проводите поиск в таблице по полю ключевых слов. Что найдено у Вас автоматически будет в Мемо (если Вы, конечно, будете использовать TDBMemo).
Чтобы поиск производился быстро, необходимо поля ключевых слов проиндексировать. Поиск по индексированому полю осуществляет процедура FindNearest(Ключевое слово или набор слов). Если что-то найдено, то указатель в таблице перемещается на найденую запись.
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 25.04.2005, 09:10

Отвечает: VBA
Здравствуйте, zeromaps!
Придумай какую-либо структуру для хранения вопроса и ответа, например:
Type
TNewType=Record
Answer:AnsiString;
Question:AnsiString;
End;
Далее создай массив:
A:Array [100] Of TNewType;
А поиск пожно делать с использованием функции Pos() простым перебором массива.
При больших количествах элементов массива желательно использовать интерполяционный поиск, либо бинарный. Код я не привожу, в связи с его громоздкостью. Если интересно - есть мыло.
Ответ отправил: VBA (статус: 1-ый класс)
Отправлен: 25.04.2005, 16:37
Оценка за ответ: 4
Комментарий оценки:
Спасибо конечно, но если тебе не трудно,то напиши более подробный код с примерами.Буду очень признателен.


Вопрос № 20182
гДПЮБЯРБСИРЕ СБЮФЮЕЛШЕ ЩЙОЕПРШ. с ЛЕМЪ РЮЙЮЪ ОПНАКЕЛЮ. мЮОХЯЮК ОПХКНФЕМХЕ ДКЪ НАПЮАНРЙХ ДЮММШУ. оНЪБХКЮЯЭ МЕНАУНДХЛНЯРЭ ХЛОНПРХПНБЮМХЪ АЮГШ Б ТНПЛЮРЕ foxPro ГЮРЕЛ ЕЙЯОНПРХПНБЮРЭ ПЕГСКЭРЮР НАПЮАНРЙХ Б РЮЙНЛ-ФЕ ТНПЛЮРЕ. б ОПХКНФЕМХХ ХЯОНКЭГНБЮК InterBase. оПНАНБЮК ВЕПЕГ BDE Х ODBя ОНДЙКЧВЮРЭЯЪ. вЕПЕГ BDE МЕ ОНМХЛЮЧ ВРН МЕРЮЙ, ODBC ОХЬЕР - СЯРЮМНБХ ДПЮИБЕП, МЕ УНРЕКНЯЭ АШ ЯРЮБХРЭ ВРН-РН ДНОНКМХРЕКЭМН. уНРЕКНЯЭ АШ ПЮАНРЮРЭ МЮОПЪЛСЧ - БПСВМСЧ ВХРЮРЭ/ТНПЛХПНБЮРЭ ТЮИК РЮАКХЖШ. оНДЯЙЮФХРЕ ОНФЮКСИЯРЮ Б ЙЮЙНЛ МЮОПЮБКЕМХХ ЙНОЮРЭ БПЕЛЪ ОНДФХЛЮЕР.
Отправлен: 24.04.2005, 15:10
Вопрос задал: Kozulin Alexander Sergeevich (статус: Посетитель)
Всего ответов отправлено: 1

Отвечает: Rusland
Здравствуйте, Kozulin Alexander Sergeevich!
Самое простое решение воспользоваться BDE, но драйвера все таки придется устанавливать - это несколько dll-ек, которые нужно закинуть в папку WindowsSystem32. Что конкретно говорит BDE, что не получается?
Ответ отправил: Rusland (статус: 2-ой класс)
Отправлен: 25.04.2005, 09:50


Вопрос № 20187
бЯЕУ АКЮЦ БЮЛ СБФЮЕЛШЕ ЩЙЯОЕПРШ.
с ЛЕМЪ 3 БНОПНЯЮ.
1.
form6.QRLabel15.Caption:=edit1.Text+' ЦНД '+combobox1.Text+' ЛЕЯЪЖ' ;
ЙНЛОНМЕМР-QRLabel МЕ ГМЮЙНЛ,ОНДЯЙЮФХРЕ ВРН ЩРН Х ЦДЕ ЕЦН ХЯЙЮРЭ?
2.
form6.quickrep1.Preview; ВРН ЩРН ГМЮВХР?
3.
цДЕ ПЮГДНАШРЭ БЯё Н SQL-ГЮОПНЯЮУ.
гЮПЮМЕЕ АКЮЦНДЮПЕМ.
P.s. Х ЕЫё, БЮЬХ НРБЕРШ ОПХУНДЪР Б МНПЛЮКЭМНИ ЙНДЕПНБЙЕ
Ю РЕЙЯР ЛНХУ БНОПНЯНБ СФЕ Б ДПСЦНИ(МЕОНМЪРМНИ)
ЛНФЕР АШРЭ БЮЛ ЛНХ БНОПНЯШ РНФЕ ОПХУНДЪР ГЮЙНДХПНБЮМШЕ?
ОНДЯЙЮФХРЕ ВРН ДЕКЮРЭ?
Отправлен: 24.04.2005, 18:41
Вопрос задал: Вячеслав (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: ImDeath
Мое почтение, Вячеслав!
3.
SQL надо смотреть в зависимости от того с какой СУБД работешь,
потому как стандарта SQL, разработчики разных СУБД, придерживаются мало (sql.ru).
Твои вопросы приходят в KOI. Какой у тебя браузер, ОС?
Ответ отправил: ImDeath (статус: 2-ой класс)
Отправлен: 24.04.2005, 22:06

Отвечает: Rusland
Здравствуйте, Вячеслав!
>1.
>form6.QRLabel15.Caption:=edit1.Text+' год '+combobox1.Text+' месяц' ;
>компонент-QRLabel не знаком,подскажите что это и где его искать?
QRLabel - компонент лежащий на вкладке QReport
>2.
>form6.quickrep1.Preview; что это значит?
просмотр составленного отчета - см. там же
>3.
>Где раздобыть вс_ о SQL-запросах.
Вообще неплохо бы приобрести книгу по Delphi. Порекомендую книгу "Работа с базами данных в Delphi" 3-е издание. В ней есть все что связано работой с БД и программирования на SQL.
>Заранее благодарен.
>P.s. и ещ_, ваши ответы приходят в нормальной кодеровке
>а текст моих вопросов уже в другой(непонятной)
>может быть вам мои вопросы тоже приходят закодированые?
>подскажите что делать?
Ваши вопросы действительно приходят в "непонятной" кодировке (Koi8-r). Приходится ваш текст сначала перекодировать из Koi в Win1251. Посмотрите настройки вашей кодировки.
Ответ отправил: Rusland (статус: 2-ой класс)
Отправлен: 25.04.2005, 10:06


Вопрос № 20202
При выводе списка каналов IRC сервера в IRC клиентах некоторые каналы имеют цветное графическое оформление. В каком компоненте это можно отобразить и как. Если не трудно, то приведите пожалуйста кусок кода.
Отправлен: 24.04.2005, 23:45
Вопрос задал: source (статус: Посетитель)
Всего ответов отправлено: 1

Отвечает: ImDeath
Мое почтение, source!
Там же псевдографика. RichEdit.
Ответ отправил: ImDeath (статус: 2-ой класс)
Отправлен: 25.04.2005, 08:15


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

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

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

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

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала 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
Отписаться

В избранное