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

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


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

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

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

Выпуск № 997
от 04.12.2007, 09:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 440, Экспертов: 59
В номере:Вопросов: 3, Ответов: 5


Вопрос № 111333: Уважаемые экперты! Помогите справиться с такой задачкой: есть 1-3 переменные (вернее индексированный массив p[N]), значения которых нужно изменять после некоторого интервала времени - независимо друг от друга (по какому-то событию, напр. нажатию ...
Вопрос № 111347: Помогите пожалуйста. Найти количество чётных элементов массива и напечатать эти элементы. Использовать компонент StringGred...
Вопрос № 111429: Здравствуйте! У меня появился вопрос: как можно подсчитать сколько строк в таблице grid...

Вопрос № 111.333
Уважаемые экперты!
Помогите справиться с такой задачкой: есть 1-3 переменные (вернее индексированный массив p[N]), значения которых нужно изменять после некоторого интервала времени - независимо друг от друга (по какому-то событию, напр. нажатию Button1). Динамически создаю таймеры, но как сделать обработку OnTimer для конкретной N-й переменной? (Использовать N как входной параметр для procedure Timer не получилось. Пока получается срабатывание таймера в порядке, обратном нажатию клавиши Button1). Можно сделать статические 3 таймера - на каждую переменную, но они будут использоваться только 1 раз, поэтому хотелось сэкономить ресурсы.

Приложение:

Отправлен: 28.11.2007, 08:56
Вопрос задала: Ляудинскайте Юлианна (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Yumark
Здравствуйте, Ляудинскайте Юлианна!

В подобной ситуации я пользовался таким приёмом:
1 - в массиве был отдельный столбец (int) - им я задавал тот промежуток времени в сек, в течении которого эта строка не должна обрабатываться;
2 - на форму кидал Timer, назначал ему интервал 1000 (1 сек), и при событии OnTimer

for i=0 to n do
if p[i,'№ моего столбца']>0 then p[i,'№ моего столбца'] := p[i,'№ моего столбца'] - 1;

3 - а уже в обработчике
if p['№ нужной строки','№ моего столбца']= 0 then ' моё событие '

Надеюсь смог объяснить свой алгоритм действий
Удачи!
Ответ отправил: Yumark (статус: 2-ой класс)
Ответ отправлен: 28.11.2007, 09:08
Оценка за ответ: 5
Комментарий оценки:
все гениальное просто! Спасибо, это то что надо.


Вопрос № 111.347
Помогите пожалуйста. Найти количество чётных элементов массива и напечатать эти элементы. Использовать компонент StringGred
Отправлен: 28.11.2007, 11:03
Вопрос задал: FANATnn (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Mishell
Здравствуйте, FANATnn!
подсчет кол-ва четных элементов в массиве - см. в приложении
"напечатать" - что Вы имеете ввиду? на принтер, на экран или в таблицу
"Использовать компонент StringGred" - видимо TStringGrid, а для чего использовать? для ввода данных или может для вывода? :)

Приложение:

Ответ отправил: Mishell (статус: 8-ой класс)
Ответ отправлен: 28.11.2007, 11:34
Оценка за ответ: 5

Отвечает: Denisss

Здравствуйте, FANATnn!

Если я правильно понял Вашу задачу, то StringGrid следует применять для распечатки (т.е. вывода) четных элементов массива.

Пример такой "распечатки" находится в приложении.

Несколько комментариев, не вошедших в код:

- Четность определяется по младшему биту числа: если число представить в двоичной форме, то младший бит четных чисел равен нулю, а нечетных - единице. Чтобы выделить младший бит числа, нужно произвести операцию И этого числа и единицы. (Mass[i] and 1).

- Чтобы обращаться к свойствам StringGrid1 напрямую, используется оператор with (with StringGrid1 do).

- При обнаружении четного числа первым делом увеличивается счетчик (Inc(cc);). С учетом этого редактируются ячейки таблицы (StringGrid1). Т.о., четные элементы массива займут строки таблицы с нумерами от 1 до n. При этом строка с номером 0 останется пустой - она заполняется в конце, в нее прописывается количество найденных элементов.

Удачи!

Приложение:

---------
Будь осторожен, когда молишься ради чего-то, потому что можешь это получить...

Ответ отправил: Denisss (статус: Профессионал)
Россия, Москва
----
Ответ отправлен: 28.11.2007, 21:40


Вопрос № 111.429
Здравствуйте! У меня появился вопрос: как можно подсчитать сколько строк в таблице grid
Отправлен: 28.11.2007, 20:34
Вопрос задал: Iksmensp (статус: Заблокирован)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 5)

Отвечает: Виктор Пырлик
Здравствуйте, Iksmensp!

Для StringGrid - RowCount
Для DBGrid - у любого датасета к которому он подключен (таблица) RecordCount

---------
Если ничего не помогло - надо читать инструкцию
Ответ отправил: Виктор Пырлик (статус: Специалист)
Ответ отправлен: 28.11.2007, 20:46
Оценка за ответ: 5
Комментарий оценки:
Спасибо

Отвечает: Djec
Здравствуйте, Iksmensp!
Допустим у вас на форме лежит StringGrid1 и описана переменная n. Тогда после
n := StringGrid1.RowCount;
в переменной n будет хранится количество строк StringGrid1.
Для DrawGrid тоже самое.
---------
"Если ты что-то делаешь, делай это хорошо. если же ты не можешь или не хочешь делать хорошо, лчуше совсем не делай" © Л.Н.Толстой"
Ответ отправил: Djec (статус: 5-ый класс)
Ответ отправлен: 28.11.2007, 23:03


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

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

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

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

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


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


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

В избранное