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

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


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

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

Выпуск № 598
от 20.09.2006, 22:05

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


Вопрос № 55488: Уважаемые эксперты! Как можно получить доступ к интересующей меня строке программным путём в DBGrid'е как StringGrid'е: StringGrid.Cells[n,m]. Спасибо за внимание!...
Вопрос № 55512: Довольно давно работаю в Delphi7, есть ряд проектов. Установил D2005, не удаляя D7. При запуске приложений из D2005 (приложения .Net), выдается сообщение "Unable to create process" и приложение не запускается. Если выйти из D2005, то все ра...
Вопрос № 55549: Уважаемые эксперты! помогите написать функцию возвращающую значения от 1 до 7 (1- понедельник, .... 7 - воскресенье). функции передается три переменных: dn - день недели от 1 до 31; mc - месяц от 1 до 12; gd - год (четырехзначное число). То есть мне ...
Вопрос № 55577: Здравствуйте уважаемые эксперты!!! Моя программа с компонентом MediaPlayer запускается на моем компьютере, а на других компьютерах с той же операционной системой не запускается (ошибка Microsoft якобы). Убираю этот компонент - все в поряд...

Вопрос № 55.488
Уважаемые эксперты! Как можно получить доступ к интересующей меня строке программным путём в DBGrid'е как StringGrid'е:
StringGrid.Cells[n,m].
Спасибо за внимание!
Отправлен: 14.09.2006, 22:13
Вопрос задал: /Iorpy$ (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: CjJoker
Здравствуйте, /Iorpy$!
Для работы с сеткой у DBGrid есть свои методы, а получать данные необходимо от источника данных:
TTable.FieldByName('ColumnName').AsString;

Текст в сетке можно подменять в событии OnGetText
Ответ отправил: CjJoker (статус: 1-ый класс)
Ответ отправлен: 15.09.2006, 10:29
Оценка за ответ: 5


Вопрос № 55.512
Довольно давно работаю в Delphi7, есть ряд проектов. Установил D2005, не удаляя D7. При запуске приложений из D2005 (приложения .Net), выдается сообщение "Unable to create process" и приложение не запускается. Если выйти из D2005, то все работает, приложение запускается. Что это может быть - кривой дистрибутив или конфликт версий?
Отправлен: 15.09.2006, 09:41
Вопрос задал: Igor_52 (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: sir henry
Здравствуйте, Igor_52!
Скорее всего кривой дистрибутив. К D2005 уже вышло два агромадных сервис пака, так что думаю он и сам по себе был не очень. Поставьте лучше Delphi 2006. Я на нем работаю и пока особых проблем с ним у меня не было.
Ответ отправил: sir henry (статус: Академик)
Россия, Красноярск
----
Ответ отправлен: 15.09.2006, 10:10
Оценка за ответ: 5
Комментарий оценки:
Спасибо. Попробую.

Отвечает: 3лоумышленник
Здравствуйте, Igor_52!
Видимо вы не знаете, но общеизвестно, что D2005 (я слышал, что D8 тоже) является крайне нестабильной и глючной. И даже с сервис-паками. D7 ни при чём.
Ответ отправил: 3лоумышленник (статус: 10-ый класс)
Ответ отправлен: 15.09.2006, 19:52
Оценка за ответ: 5
Комментарий оценки:
Спасибо, учту.


Вопрос № 55.549
Уважаемые эксперты! помогите написать функцию возвращающую значения от 1 до 7 (1- понедельник, .... 7 - воскресенье). функции передается три переменных: dn - день недели от 1 до 31; mc - месяц от 1 до 12; gd - год (четырехзначное число). То есть мне нужно узнать по дате какой это день недели. буду очень благодарен за помощь.
Отправлен: 15.09.2006, 17:10
Вопрос задал: Призрак (статус: Посетитель)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Rusland
Здравствуйте, Призрак!
Посмотрите функцию
function DayOfWeek(Date: TDateTime): Integer;

Description

DayOfWeek returns the day of the week of the specified date as an integer between 1 and 7, where Sunday is the first day of the week and Saturday is the seventh.

То есть неделя начинается с воскресенья (Sunday).
---------
Если партия скажет есть контакт, будем есть контакт.
Ответ отправил: Rusland (статус: Специалист)
Ответ отправлен: 15.09.2006, 17:31

Отвечает: din
Здравствуйте, Призрак!
Зачем писать, она есть в делфи. Подключаете юнит DateUtils, и функция DayOfTheWeek(const AValue: TDateTime) возвращает число от 1 до 7 (отсчет с понедельника), параметр AValue - это тип TDateTime. Если у Вас все данные даты в виде чисел, то для их конвертации используете функцию EncodeDate(Year, Month, Day: Word).
Пример в приложении.

Приложение:

---------
Есть только одно зло - невежество, и только одно благо - знания

Ответ отправил: din (статус: Практикант)
Ответ отправлен: 15.09.2006, 17:41

Отвечает: CjJoker
Здравствуйте, Призрак!
В Delphi есть функция DayOfWeek, возвращающая целочисленное значение недели:

procedure TForm1.Button1Click(Sender: TObject);
var s: string;
begin
case DayOfWeek(Date) of
1: s:='Воскресенье';
2: s:='Понедельник';
3: s:='Вторник';
4: s:='Среда';
5: s:='Четверг;
6: s:='Пятница';
7: s:='Суббота';
end;
ShowMessage(s);
end;
Ответ отправил: CjJoker (статус: 1-ый класс)
Ответ отправлен: 15.09.2006, 18:11

Отвечает: mvp
Здравствуйте, Призрак!
В принципе, Вам уже ответили, но если так интересно, то можно использовать то, что в приложении (взял вроде с sources.ru, когда-то давно)

Приложение:

---------
Моя совесть чиста - не бывшая в употреблении

Ответ отправил: mvp (статус: Студент)
Ответ отправлен: 19.09.2006, 13:19


Вопрос № 55.577
Здравствуйте уважаемые эксперты!!!
Моя программа с компонентом MediaPlayer запускается на моем компьютере,
а на других компьютерах с той же операционной системой не запускается
(ошибка Microsoft якобы). Убираю этот компонент - все в порядке - работает на всех комп-ах. Вопрос:этому компоненту в операц.системе что-то надо чтоли?
(что тогда?). Спасибо.
Отправлен: 15.09.2006, 21:20
Вопрос задал: Piit (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Mo-skin
Здравствуйте, Piit!
Максимум что надо этому компоненту - winmm.dll, но она, обычно везде бывает.
Скорее всего Вы у компонента выставляете AutoEnable - true и AutoOpen - true и еще указываете имя звукового(видео) файла. Но при компиляции эти файлы в экзешник не вставляются. Следовательно на другом компе прога ищет их по указанному в FileName пути и соответственно их не находит! Или еще вариант:
Вы таскаете файлы вместе с прогой, но указываете относительные пути. Допустим, файл song.wav находилься в папке с прогой, тогда лучше прописать путь так:
ExtractFilePath(Application.ExeName)+'/song.wav'.
И еще: после закрытия окна "ошибка Microsoft " обычно появляется еще одно с сообщением об ошибке. Вот лучше бы было если бы Вы его текст сообщили.
С уважением Mo-skin/

---------
Чем больше женщину мы меньше, тем больше меньше мы ее!
Ответ отправил: Mo-skin (статус: 2-ой класс)
Ответ отправлен: 15.09.2006, 22:29
Оценка за ответ: 5


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

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

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

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

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


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


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.36 от 06.09.2006
Яндекс Rambler's Top100

В избранное