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

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


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

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

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

Выпуск № 1018
от 25.12.2007, 20:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 435, Экспертов: 61
В номере:Вопросов: 6, Ответов: 11

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 114910: Здравствуйте,эксперты. Нужна помощь! Делаю тестовую программу, вопросы теста задаются из текстового файла.Чтобы сделать перемешивание вопросов в тесте,Нужно задать массив, и заполнить его случайным образом. Как это сделать( поменять надо масс...
Вопрос № 114979: Добрый день! Подскажите пожайлуста как можно сделать, сортировку (фильтрацию) файлов т.е. чтоб при сохранении файла другими програмами, он запрещал или разрешал сохранять файлы по определенному названию Пример: чтоб файл сохранался в том случае е...
Вопрос № 115028: Мне надопостроить алгоритм программы тестирования в Delphi. т.е как-бы сама разработка ее... или цикл так назвать.. допустим начинается со старта.. потом открытие файла..если файл удачно открыватся, то тест продолжается. если не удачно, то возращаетс...
Вопрос № 115063: Привет Знатокам! Требуется маленький примерчик работы с типизированным файлом 1 добавление информации в файл 3 переменные (string) и 1 переменная (integer) 2 Поиск данных в файле по первой строковой переменной и вывод на форме 3 Также, ес...
Вопрос № 115080: У меня на форме расположен webbrowser. 1. Захожу по адресу, например: www.mysite.ru 2. Теперь не дергая мышки мне нужно программно нажать на нужную ссылку. Например на странице есть слово "Скачать" и закрепленная за ним ссылка "...
Вопрос № 115092: Доброго вечера эксперты! Не поможите ли вы мне с таким вопросом? Хочу построить на канве TImage точки (х1, х2 - const, y1, y2 - числа, например ввожу их в TEdit1, TEdit2). Потом при нажатий кнопки (TButton) эти точки соединялись прямой. Очень...

Вопрос № 114.910
Здравствуйте,эксперты. Нужна помощь!
Делаю тестовую программу, вопросы теста задаются из текстового файла.Чтобы сделать перемешивание вопросов в тесте,Нужно задать массив, и заполнить его случайным образом.
Как это сделать( поменять надо массив d, т.е. сделать в нём перемешивание)
Подскажите как!!

Приложение:

Отправлен: 19.12.2007, 20:56
Вопрос задала: Малюшенкова Диана Игоревна (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 12)

Отвечает: programyst
!!!
Здравствуйте, Малюшенкова Диана Игоревна!
Var K:Integer;b:boolean;
Type
Temp array[1..17]of Integer;

for i:=1 to QCount do
begin
Assign(F,<Имя файла>)
K := random(QCount)+1;
j:=1;
if i>1 then
while j<=i do begin
if K <> Temp[j] then b := true else begin b:=false;break;end;
inc(j);
Temp[i]:= K;
if b then begin
readln(f,s);
D[K] := S else ; end;

end;

Совершенно не понятно содержимое выделенных строк. Вывод один ответ сделан для "галочки" и не был проверен.
-----
∙ Отредактировал: Gh0stik (Академик)
∙ Дата редактирования: 19.12.2007, 22:45
Ответ отправил: programyst (статус: Заблокирован)
Ответ отправлен: 19.12.2007, 21:31

Отвечает: Louken
Здравствуйте, Малюшенкова Диана Игоревна!

Как я понял из вашего описания массива d, то внем храняться номера вопросов и проходя последовательно по массиву d, мы знаем номер очередного вопроса, которые идут уже в случайном порядке.

Год назад тоже делал тест, вот как я поступил (заодно, перевел под Вашу ситуацию), код в приложении.
Единственный недостаток такого подхода - это максимальное количество вопросов в тесте - 255. Хотя я себе не могу представить ситуации, когда нужно было бы создать тест с 300-ми вопросов, это уж перебор.

Приложение:

Ответ отправил: Louken (статус: Студент)
Ответ отправлен: 19.12.2007, 22:30
Оценка за ответ: 4
Комментарий оценки:
TForm2.InitSequenceVopros-строчка программе не понятна в тесте 17 вопросов не работает что то

Отвечает: Маренич Владимир
Здравствуйте, Малюшенкова Диана Игоревна!

По-моему надо сделать действительно перемешивание массивав случайном порядке, для того чтобы не повторялись:

Приложение:

Ответ отправил: Маренич Владимир (статус: Студент)
Ответ отправлен: 20.12.2007, 00:13


Вопрос № 114.979
Добрый день!
Подскажите пожайлуста как можно сделать, сортировку (фильтрацию) файлов т.е. чтоб при сохранении файла другими програмами, он запрещал или разрешал сохранять файлы по определенному названию Пример: чтоб файл сохранался в том случае если первый символ цифра. Може кто сталкивался с такой проблемой помогите не чего не получается. Спасибо за внимание:)
Отправлен: 20.12.2007, 08:44
Вопрос задал: Кирилюк Александр Сергеевич (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Raptor3
!!!
Здравствуйте, Кирилюк Александр Сергеевич!
Неясен смысл подобных действий - единственный вариант через что можно сделать это хуки

К Raptor3!
Пока обращаю внимание, что это не является ответом. "Это" надо размещать в минифоруме

-----
∙ Отредактировал: Boriss (Профессор)
∙ Дата редактирования: 20.12.2007, 10:21

---------
Программист - это человек который решает проблему, о которой вы не знаете, способом который вы не понимаете
Ответ отправил: Raptor3 (статус: 3-ий класс)
Ответ отправлен: 20.12.2007, 08:59


Вопрос № 115.028
Мне надопостроить алгоритм программы тестирования в Delphi. т.е как-бы сама разработка ее... или цикл так назвать.. допустим начинается со старта.. потом открытие файла..если файл удачно открыватся, то тест продолжается. если не удачно, то возращается к старту.. помогите пожалуста!!!!! очинь надо вот моя ася - 323834137
Отправлен: 20.12.2007, 13:00
Вопрос задала: Fergie Ferg (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Ranmasao
Здравствуйте, Fergie Ferg!
не совсем понятно, что Вы имеете в виду, но может быть это цикл:

FileResult := true;
repeat
try
AssignFile(F, filename);
Reset(F);
except
res := false;
end;
until FileResult;
Ответ отправил: Ranmasao (статус: 1-ый класс)
Ответ отправлен: 20.12.2007, 13:47

Отвечает: PavelGM
Здравствуйте, Fergie Ferg!

Может еще вот это это подойдет - http://dunit.sourceforge.net ?

На базе этой технологии можно строить наборы тестов для отдельных частей программы и проводить автоматическое тестирование.
Ответ отправил: PavelGM (статус: Студент)
Ответ отправлен: 20.12.2007, 18:29


Вопрос № 115.063
Привет Знатокам! Требуется маленький примерчик работы с типизированным файлом
1 добавление информации в файл 3 переменные (string) и 1 переменная (integer)
2 Поиск данных в файле по первой строковой переменной и вывод на форме
3 Также, если вас заинтересовало, - удаление,найденной строки и удобный вывод всех записей на форму
СПАСИБО
Отправлен: 20.12.2007, 15:38
Вопрос задал: Чалагаев Иван Григорьевич (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 4)

Отвечает: Проходящий Мимо
Здравствуйте, Чалагаев Иван Григорьевич!
Навожу пример консольного приложения, для
1. Описываем наш тип, например телефонный справочник:
type
TTelephone=record
TelephoneNum: word;
TelephoneNumber: string[7];
TelephoneMaster: string[25];
AddressMaster: string[30];
SityCode: byte;
end;

2. Файловою переменную:
var
FTel: file of TTelephone;

3.Открываем (или создаем) файл:
procedure DataBaseOpen;
begin
Assign(FTel, 'Tel.db');
{$I-} Reset(FTel); {$I+}
if IOResult<>0 then Rewrite(FTel);
end;

4. Процедура добавления записи:
procedure AppendTelephone;
var Rec:TTelephone;
begin
with Rec do
begin
Write('Телефонный номер: '); //можно заменить чтением данных с формы
Readln(TelephoneNumber); //например Readln(Form1.Edit1.Text)
Write('Фамилия : '); //нужно помнить о приведении типов
Readln(TelephoneMaster);
Write('Адрес : ');
Readln(AddressMaster);
Write('Код города : ');
Readln(SityCode);
TelephoneNum:=MaxNumTelephone+1;
end;
Seek(FTel, FileSize(FTel));
Write(FTel, Rec);
Writeln;
end;

5. Поиск осуществляется последовательным перебором:

procedure SelectTelephone(v_TelephoneNum: word);
var Rec:TTelephone;
begin
Seek(FTel, 0); //стали на начало файла
while not Eof(FTel) do //проходим в цикле все записи
begin
Read(FTel, Rec); //прочитать текущее значение
if Rec.TelephoneNumber = '2222222' then ... //что-то делаем
end;

6.Убираем за собой, закрываем файл:
procedure DataBaseClose;
begin
Close(FTel);
end;

Что не ясно, пишите в мини-форум.
Удачи.
---------
Carpe diem!
Ответ отправил: Проходящий Мимо (статус: 10-ый класс)
Ответ отправлен: 20.12.2007, 16:06


Вопрос № 115.080
У меня на форме расположен webbrowser.
1. Захожу по адресу, например: www.mysite.ru
2. Теперь не дергая мышки мне нужно программно нажать на нужную ссылку. Например на странице есть слово "Скачать" и закрепленная за ним ссылка "www.mysite.ru/download".
Как просто нажать на это слово. Простой метод webbrowser.navigate не подойдет нужен именно переход кликом. Но мышка не должна дергаться.
Отправлен: 20.12.2007, 17:52
Вопрос задал: Sergoss (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Raptor3
Здравствуйте, Sergoss!
Что то похожее на это -вместо проверки на слово можно и на урл проверять Webbrowser1.OleObject.Document.Links.Item(i).href
- приведен первый рабочий вариант
Второй вариант связан с IHTMLElementCollection и HTMLAnchorElement

Приложение:

---------
Программист - это человек который решает проблему, о которой вы не знаете, способом который вы не понимаете

Ответ отправил: Raptor3 (статус: 3-ий класс)
Ответ отправлен: 20.12.2007, 18:23
Оценка за ответ: 5


Вопрос № 115.092
Доброго вечера эксперты!
Не поможите ли вы мне с таким вопросом? Хочу построить на канве TImage точки (х1, х2 - const, y1, y2 - числа, например ввожу их в TEdit1, TEdit2). Потом при нажатий кнопки (TButton) эти точки соединялись прямой.
Очень надо. Зарание спасибо!
Отправлен: 20.12.2007, 19:07
Вопрос задал: Попов Александр Вячеславович (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 3)

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

Вот пожалуйста изучаейте ;).
procedure TForm1.BitBtn1Click(Sender: TObject);
const x=10; y=10;
var x0,y0:integer;
begin
  x0:=StrToInt(Edit1.Text);
  y0:=StrToInt(Edit2.Text);
  with Image1.Canvas do
  begin
    MoveTo(x,y); //перемещаемся в точку (x,y)
    LineTo(x0,y0); //проводим прямую из точки (x,y) в точку (x0,y0)
  end;
end;


Good Luck!!!
---------
Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Академик)
Украина, Славянск
Организация: Славянский государственный педагогический университет (Кафедра алгебры)
WWW: http://gh0stik.rusfaq.ru/
ICQ: 289363162
----
Ответ отправлен: 20.12.2007, 19:25

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

Код в приложении.
В дополнении к коду, скажу, что надо объявить переменную fby, можете объявить ее где хотите, например здесь:

var
Form1: TForm1;
fby: boolean;
implementation

или здесь:
type
TForm1 = class(TForm)
//...
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
fby: boolean;
//...
public
{ Public declarations }
//...
end;

Приложение:

Ответ отправил: Louken (статус: Студент)
Ответ отправлен: 20.12.2007, 22:12

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

Никаких проблем:

TButtonClick:
const x1=0; x2=0;
begin
Canvas.MoveTo(X1,strtoint(Edit1.text));
Canvas.LineTo(X2,strtoint(Edit2.text));
end;

З.Ы.: рекомендую предусмотреть перерисовку Canvas на случай сворачивания и разворацивания формы или временного перекрытия её другой формой.
Ответ отправил: Yumark (статус: 3-ий класс)
Ответ отправлен: 21.12.2007, 09:15


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

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

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

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

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

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


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


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

В избранное