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

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


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

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

Выпуск № 836
от 11.06.2007, 16:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 473, Экспертов: 81
В номере:Вопросов: 4, Ответов: 15


Вопрос № 90185: Здравствуйте. Подскажите пожалуйста где можно скачать коллекцию иконок и набор значков для button. Заранее спасибо....
Вопрос № 90208: Уважаемые Экспрты Я облазил весь Delphi, но так и не нашел функции которая вычисляла бы факториал я знаю, что она там есть, но не знаю где... Помогите скажите в каком модуле и как её вызвать....
Вопрос № 90227: Здраствуйте! У меня несколько вопросов: 1. Как реализовать в Delphi поодержку "поверх всех окон"? 2. Я хочу использовать для отображения информации TWebBrowser. При строке: WebBrowser1.Navigate('index'.html); он компилирует ...
Вопрос № 90249: Здравствуйте уважаемые Эксперты. Вопрос такой: В программе надо организовать простой лог. Хочу сделать его как, например в Касперском 6 (или в других подобных программах) т.е. что бы в логе присутствовали иконки. Как это можно реализо...

Вопрос № 90.185
Здравствуйте.
Подскажите пожалуйста где можно скачать коллекцию иконок и набор значков для button.
Заранее спасибо.
Отправлен: 05.06.2007, 21:13
Вопрос задал: Шмаров Сергей (статус: 4-ый класс)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Сухомлин Кирилл Владимирович
Здравствуйте, Шмаров Сергей!
http://ico.brush.ru/
Сайт, правда, старый и давно не обновлялся, но иконок там много.
---------
Не узнаешь - не попробуешь.
Ответ отправил: Сухомлин Кирилл Владимирович (статус: Специалист)
Ответ отправлен: 05.06.2007, 21:16
Оценка за ответ: 5
Комментарий оценки:
Спасибо за помощь.
Действительно большой набор иконок.

Отвечает: Кэр Лаэда
Здравствуйте, Шмаров Сергей!

http://www.iconsfree.org/free-icons/language/rus/
посмотрите здесь иконок много и они каталогизированы
Ответ отправил: Кэр Лаэда (статус: 9-ый класс)
Ответ отправлен: 05.06.2007, 21:19
Оценка за ответ: 5
Комментарий оценки:
Спасибо.
Хорошие наборы иконок.

Отвечает: Н.В.
Здравствуйте, Шмаров Сергей!

Иконки:
http://www.ikonok.net/
http://www.zerores.com.ru/
http://verhu.pisem.net/ikonki.htm
http://softok.org/ob/face/275prog.html
Набор значков для кнопок:
http://new-pro.narod.ru/delphi/system_buttons_16x16.zip

Удачи!
Ответ отправил: Н.В. (статус: Студент)
Ответ отправлен: 05.06.2007, 21:21
Оценка за ответ: 5
Комментарий оценки:
Спасибо за ссылки.
Огромный набор иконок.
Отдельное спасибо за последнюю ссылку!

Отвечает: Градов Юрий Михайлович
Здравствуйте, Шмаров Сергей!
Посмотрите здесь:
http://www.sql.ru/faq/faq_topic.aspx?fid=512
---------
Глаза боятся - руки делают!
Ответ отправил: Градов Юрий Михайлович (статус: Студент)
Ответ отправлен: 05.06.2007, 23:18
Оценка за ответ: 5
Комментарий оценки:
Спасибо за помощь.

Отвечает: Фадеев Юрий
Здравствуйте, Шмаров Сергей!
Ссылки на иконки:
http://www.win-design.ru/o_ico.shtml
http://pulya.net/2007/03/20/khoroshaja_kollekcija_ikonok.html
ftp://softlinks.ru/7464153/7000_Icons.All.rar
ftp://ftp.nsk.su/pub/windows/icons/icon-lib.arj
http://www.ikonok.net/sci_fi.shtml
а еще можна на Яндексе поискать: коллекция иконок скачать
Ответ отправил: Фадеев Юрий (статус: 1-ый класс)
Ответ отправлен: 06.06.2007, 09:34
Оценка за ответ: 5
Комментарий оценки:
Спасибо за помощь.


Вопрос № 90.208
Уважаемые Экспрты
Я облазил весь Delphi, но так и не нашел функции которая вычисляла бы факториал я знаю, что она там есть, но не знаю где... Помогите скажите в каком модуле и как её вызвать.
Отправлен: 06.06.2007, 01:10
Вопрос задал: Lejon (статус: Посетитель)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 11)

Отвечает: Tribak
Здравствуйте, Lejon!
я тоже не знаю где, но ее помоему проще самому написатьfunction
faq(n:integer):integer;
var
i,y:integer;
begin
y:=1;
for i:=1 to n do
y:=y*i;
faq:=y;
end;
Ответ отправил: Tribak (статус: 2-ой класс)
Ответ отправлен: 06.06.2007, 01:26
Оценка за ответ: 5
Комментарий оценки:
Обидно но ребята из борланда не сделали этой функции

Отвечает: Gh0stik
Здравствуйте, Lejon!

Насколько мне известно в модуле Math, который содержит всевозможные функции и процедуры по обработке числовых данных, нет такой стандартной функции. Но ее несложно написать самому, вот код:
function factorial(x:integer):double;
begin
if x=0 {Исправил эксперт sir henry}
then factorial:=1
else factorial:=x*factorial(x-1);
end;


Применить ее можно так:
procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(format('%.2f',[factorial(4)])); //найдем факториал числа 4.
end;


Good Luck!!!
---------
Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Профессор)
Украина, Славянск
Организация: Славянский государственный педагогический университет (Кафедра алгебры)
ICQ: 289363162
----
Ответ отправлен: 06.06.2007, 01:28
Оценка за ответ: 5
Комментарий оценки:
Премного благодарен

Отвечает: Фадеев Юрий
Здравствуйте, Lejon!

Фактически, ответ является повторным.
(edited by Ерёмин А.)

Добавте в проект функцию:

function CalcFact(n: Integer): Integer;
begin
if (n = 0) then CalcFact:= 1
else CalcFact:= n * CalcFact(n - 1);
end;

и потом вызывайте ее например передавая в нее значение поля edit.

calcFact(strtoint(edit1.Text))
Ответ отправил: Фадеев Юрий (статус: 1-ый класс)
Ответ отправлен: 06.06.2007, 09:46
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо!!!!!!!!!!!

Отвечает: Sashok
Здравствуйте, Lejon!
Зачем париться, напиши сам.
function factorial (a: byte): cardinal;
var i: byte;
begin
if a<0 then result:=0
else bein
result:=1;
for i:=2 to a do result:=result*i;
end;
end;
Ответ отправил: Sashok (статус: 3-ий класс)
Ответ отправлен: 06.06.2007, 22:05
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо


Вопрос № 90.227
Здраствуйте! У меня несколько вопросов:
1. Как реализовать в Delphi поодержку "поверх всех окон"?
2. Я хочу использовать для отображения информации TWebBrowser. При строке:
WebBrowser1.Navigate('index'.html);
он компилирует но WebBrowser не может найти файл index'.html, хотя тот лежит в папке с компилированым экзешником.
3. В "Delphi World" приводалась статья "Интерфейс" -> "Формы" -> "Вылет окна. код который тем приводился, не работает. не скажите причину?
(procedure TForm1.FormShow(Sender: TObject);
var
RectSmall, RectNormal: TRect;
begin
RectSmall := Rect(10, 0, 23, 0);
RectNormal := Form1.BoundsRect;
DrawAnimatedRects(GetDesktopWindow, IDANI_CAPTION, RectSmall, RectNormal);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
RectSmall, RectNormal: TRect;
begin
RectSmall := Rect(10, 0, 0, 0);
RectNormal := Form1.BoundsRect;
DrawAnimatedRects(GetDesktopWindow, IDANI_CAPTION, RectNormal, RectSmall);
end;)
4. Как искать текст в WebBrowser?
Отправлен: 06.06.2007, 08:06
Вопрос задал: тепленёв Максим Витальевич (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 31)

Отвечает: Ерёмин А.А.
Здравствуйте, епленёв Максим Витальевич!
1. Для того, чтобы окно отображалось поверх всех остальных, нужно изменить свойство FormStyle:
Form1.FormStyle:=fsStayOnTop;
Удачи!
---------
Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин А.А. (статус: Профессор)
Россия, Тула
WWW: Программирование на DELPHI
----
Ответ отправлен: 06.06.2007, 08:31

Отвечает: Н.В.
Здравствуйте, епленёв Максим Витальевич!
2. Чтобы страница загружалась необходимо указать полный путь к ней. Если она лежит в папке с программой, используйте код
WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+ 'index.htm');

4. Можно использовать бесплатный компонент EmbeddedWB (http://www.bsalsa.com). В нем есть возможность поиска.

Удачи!
Ответ отправил: Н.В. (статус: Студент)
Ответ отправлен: 06.06.2007, 09:08

Отвечает: Coupler
Здравствуйте, епленёв Максим Витальевич!
3. Нужно лишь немного изменить код, написав вместо GetDesktopWindow хендл нужной формы, т.е. handle. Эффект применяется к тому окну, которое указано. Если Вам нужны другие эффекты, можете посмотреть компонент ArtForm - у него в комплекте около 50 эффектов с возможностью задавать время вывода формы на экран.

Приложение:

Ответ отправил: Coupler (статус: Практикант)
Ответ отправлен: 06.06.2007, 19:32


Вопрос № 90.249
Здравствуйте уважаемые Эксперты.
Вопрос такой:
В программе надо организовать простой лог.
Хочу сделать его как, например в Касперском 6 (или в других подобных программах) т.е. что бы в логе присутствовали иконки.
Как это можно реализовать:
- с помощью каких компонентов Дельфи;
- как можно (удобнее) хранить такой лог в текстовом файле или еще как нибудь..?
Отправлен: 06.06.2007, 11:01
Вопрос задал: Пепеляев Александр Павлович (статус: 1-ый класс)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 3)

Отвечает: Градов Юрий Михайлович
Здравствуйте, Пепеляев Александр Павлович!
Можно использовать TMemo, сохранять в txt формате. Этот пример из DelphiWord6, посмотрите в нем, очень много полезного. http://delphiword.narod.ru

Приложение:

---------
Глаза боятся - руки делают!

Ответ отправил: Градов Юрий Михайлович (статус: Студент)
Ответ отправлен: 06.06.2007, 12:18

Отвечает: ВладимирР.
Здравствуйте, Пепеляев Александр Павлович!

Мне представляется два варианта:
1. Использовать RichEdit и хранить протокол в формате RTF. Обратите внимание на компонент TRichView (http://www.trichview.ru/download/). На сайте есть бесплатная версия.

2. Написать свой формат и отображать его как хотите.
Например, создать форму протокола, поместить на нее ImageList с картинками, а в самом протоколе просто сохранять индекс картинки из этого ImageList. В этом случае
протокол будет простым текстовым файлом. Загрузив его в TStringList методом LoadFromFile, для отображения протокола можно использовать TStringGrid с ручной прорисовкой (через событие OnDrawCell). Чтобы нарисовать иконку можно использовать код типа:
<--
procedure TForm.StringGridDrawCell(Sender: TObject; ACol, ARow : Integer;
Rect : TRect; State : TGridDrawState);
begin
if Arow >0 then
if ACol = 0 then begin
{... } // Здесь определяем индекс иконки
ImageList.Draw(StringGrid.Canvas,
Rect.Left + StringGrid.Canvas.TextWidth('0000'),
Rect.Top,
1); // индекс иконки
else
{... } // Код для вывода текста
end;
-->
Если протокол ожидается большим, то его можно хранить в запакованном потоке
(смотрите библиотеку zlib, методы класса TMemoryStream и метод TStringList.LoadFromStream). Если хранить поток, то формат данных может быть вообще любой - Вы сами его разберете при загрузке.

Надеюсь, что помог.
Ответ отправил: ВладимирР. (статус: 1-ый класс)
Ответ отправлен: 06.06.2007, 14:33

Отвечает: Sashok
Здравствуйте, Пепеляев Александр Павлович!
Для отображения строки с иконкой можно использовать ListView
Ответ отправил: Sashok (статус: 3-ий класс)
Ответ отправлен: 06.06.2007, 21:59


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

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

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

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

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


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


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.52 от 02.05.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное