IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

3 страниц V < 1 2 3 >  
 Ответить  Открыть новую тему 
> Футбольный менеджер comes back, Теперь на Delphi
сообщение
Сообщение #21


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Вот пока маленький вопросик:
Можно ли вставлять в Delphi файлы .jpg
В учебнике написано можно - а на деле нельзя?
А то bmp много весят!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #22


Гость






Цитата
В учебнике написано можно - а на деле нельзя?
Почему ж нельзя? Uses Jpeg и работай...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #23


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


volvo, спасибо.

мисс граффити, вот ещё что:

События по таймеру выводятся.
А как сделать так чтобы голы выводились не случайно?
У меня есть процедура определения победителя.
На выходе 2 переменные, у 1й значение кол-ва голов, забитых первой командой, у 2й соответственно второй.
Как растянуть вывод этих голов на все время матча?
Т.е голы выводятся не случайно, а согласно значениям этих переменных.
И если таймер например срабатывает каждые 2 секунды, то к 90му(столько минут в матче) срабатыванию в ЛистБоксе уже должны быть выведены все забитые голы.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #24


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Нужно распределить все забитые голы между началом и концом матча?
Самое простое решение - ДПСЧ определить время, в которое будет забит каждый из голов. Желательно также проверить, что между вновь вычисленным голом и каждым из предыдущих интервал времени не меньше определенного, например, минута. Если меньше - еще раз вызвать ДПСЧ.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #25


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


А как создать файл справки и привязать его к кнопке на форме?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #26


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Цитата(cooler @ 14.05.2008 11:20) *

А как создать файл справки и привязать его к кнопке на форме?

Файл справки можно создать, например, в текстовом редакторе (блокноте - если другого нет).
В обработчике кнопки нужно считать файл и куда-нибудь его вывести: в специально для этого предназначенное поле, окно или программу. В качестве последних, опять же, можно использовать блокнои или IE.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #27


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Нет, а как windows справку там по-моему .chm файл
Чтобы со скринами

А то что ты предложил можешь подробнее написать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #28


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Да, ещё не подскажете как привязать процедуру записи в файл к SaveDialog?
Как задать тип файла по умолчанию?
Там execute вроде бы, но что-то я никак не разберусь
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #29


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Цитата(cooler @ 14.05.2008 20:02) *

Нет, а как windows справку там по-моему .chm файл
Чтобы со скринами
Можно сделать все, что угодно.
Причем разными способами.
Способ 1-й: Ищешь описание формата файла и пишешь программу, создающую файл в нужном формате.
Способ 2-й: Ищешь подходящий компонент и с его использованием пишешь программу, создающую файл в нужном формате.
Цитата
А то что ты предложил можешь подробнее написать?
Поподробнее написать не могу.
Могу попытаться ответить на КОНКРЕТНЫЕ вопросы.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #30


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Вопрос о сохранении в файл в силе. Он сейчас важнее
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #31


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Код
if SaveDialog1.Execute then
  сделать какую-нибудь фигню

В обработчике события нажатия на кнопку "Сохранить" (ну или как там у тебя это реализовано)


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #32


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Спасибо
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #33


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Ещё 1 глупый мини-вопрос
Как записать в текстовый файл информацию типа
Код
строка1 число число
строка2 число число
...........................
строкаN число число

Где стоки берутся из массива строк, а числа из массивов чисел соответственно
В паскале я делал так, а здесь чем-то отличается?
Как записать это?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #34


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


точно так же )))
только вместо assign - assignfile
вместо close - closefile
вместо text - textfile
вроде все отличия...


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #35


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Спасибо!
А можешь быстренько накинуть пару строк, чтобы создавался новый файл и записывалось как у меня написано
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #36


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


type ar1=array[1..10] of string;
ar2=array[1..10] of integer;
...
procedure InitArrays(var st: ar1; var num: ar2);
var i: integer;
begin
for i:=1 to 10 do
begin
st[i]:='ñòðîêà'+IntToStr(i);
num[i]:=i;
end;
end;

procedure NewFile(const st: ar1; const num: ar2);
var f: TextFile;
i: integer;
begin
AssignFile(f,'c:\res.txt');
//можно сделать проверку, удалось ли создать файл
rewrite(f);
for i:=1 to 10 do
writeln(f,st[i],' ',IntToStr(num[i]));
closeFile(f);
end;


procedure TForm1.Button1Click(Sender: TObject);
var st: ar1;
num: ar2;

begin
InitArrays(st,num);
NewFile(st,num);
end;

end.



--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #37


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Спасибо, только вот у меня одна неувязочка.
Может быть опять глупая ошибка, но все же.
Если я пишу в файл 1 строку по указанной ниже процедуре, т.е без цикла - всё нормально
А вот так выдаетя ошибка:


procedure Initarr(var st_name:ar1;var reit:ar2);
var a:byte;
begin
for a:=1 to 17 do
begin
st_name[a]:=squad[a]^.name;
reit[a]:=squad[a]^.koef_gk;
end;
end;



squad[i] - массив где все данные об игроках. Если нужно могу саму программу выложить

Сообщение отредактировано: cooler -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #38


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Здесь:
Код
st_name[a]:=squad[a]^.name;

Т.е если
Код
st_name[1]:=squad[1]^.name;

всё работает

Всё, сделал уже
Скажите как сделать ссылку на документ WORD из Делфи.
У меня там help

Сообщение отредактировано: cooler -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #39


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Ещё: как дописывать в созданный файл?
Т.е я один раз записал, как не стирать то, что уже было, а дописать прямо туда ещё.
Что здесь изменить:

procedure NewFile(const st: ar1; const num: ar2);
var f: TextFile;
i: integer;
begin
AssignFile(f,'c:\res.txt');
//можно сделать проверку, удалось ли создать файл
rewrite(f);
for i:=1 to 10 do
writeln(f,st[i],' ',IntToStr(num[i]));
closeFile(f);
end;


Во всем разобрался уже.
Что -то посещаемость здесь резко упала.
Я уже сам с собой разговариваю

Сообщение отредактировано: cooler -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #40


Бывалый
***

Группа: Пользователи
Сообщений: 178
Пол: Мужской

Репутация: -  0  +


Скорее всего финальный вопрос в этой теме
Столкнулся с проблемой, при повторном запуске init_footballers , которая из файла считывает информацию и заносит в массив - появляется ошибка.
Насколько разобрался нужен деструктор. Помогите пожалуйста его написать
Описание на всякий случай :
TPeople = object
age: integer;
name: string;
constructor init(AName: string; AnAge: integer);
end;

PTFootballer = ^TFootballer;

TFootballer = object(TPeople)
code_position: TPosition;
code_team: integer;
k,koef_gk,koef_df,koef_md,koef_f: byte;
price:word;
acting: TPosition;
procedure print;
constructor init(AName: string; AnAge: integer;team, position: string;akoef_gk,akoef_df,akoef_md,akoef_f: byte);
{procedure print_info(i:integer); }
function Raschet:word;
end;

var
count_footballersk: integer;
footb_array:array[1..max_footballers] of PTFootballer;

players,i: integer;
namets:array[1..20] of string;
squad,squad2: array[1 .. 20] of PTFootballer;


И сам код:
{-------------------------------------------------------}
constructor TPeople.init(AName: string; AnAge: integer);
begin
age := AnAge;
name := AName;
end;

{-------------------------------------------------------}
constructor TFootballer.init(AName: string; AnAge: integer;team, position: string;akoef_gk,akoef_df,akoef_md,akoef_f: byte);
var
p: TPosition;
i: integer;
Aprice:word;
begin
inherited init(AName, AnAge);
for p := low(Tposition) to high(TPosition) do
if s_position[p] = position then begin
code_position := p;
end;
for i := 1 to max_teams do
if s_team[i] = team then begin
code_team := i;
end;
{k := Ak; }
koef_gk := Akoef_gk;
koef_df := Akoef_df;
koef_md := Akoef_md;
koef_f := Akoef_f;
price:=raschet;
end;
{------------------------------------------------------------}

procedure init_footballers(const filename: string);

function _toint(s: string): integer;
var _result, _error: integer;
begin
val(s, _result, _error);
_toint := _result;
end;

function _copy(var s: string; count: integer): string;
begin
_copy := copy(s, 1, pred(count));
delete(s, 1, count);
end;

var
f: text;
s: string;
f_n, f_t, f_p: string; f_a,f_ccc, f_cgk, f_cdf, f_cmd, f_cf: integer;
begin
assign(f, filename); reset(f);

count_footballers := 0;
while not seekeof(f) do begin
inc(count_footballers);
readln(f, s);

f_n := _copy(s, pos(' ', s));
f_a := _toint(_copy(s, pos(' ', s)));
f_t := _copy(s, pos(' ', s));
f_p := _copy(s, pos(' ', s));
f_cgk := _toint(_copy(s, pos(' ', s)));
f_cdf := _toint(_copy(s, pos(' ', s)));
f_cmd := _toint(_copy(s, pos(' ', s)));
f_cf := _toint(s);

new(
footb_array[count_footballers],
init(f_n, f_a, f_t, f_p,f_cgk, f_cdf, f_cmd, f_cf)
);
end;
close(f);
end;


P.S Т.к код остался паскалевский теперь нужен деструктор
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

3 страниц V < 1 2 3 >
 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 26.01.2021 18:50
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name