![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() у меня есть несколько вопросов обьясните мне кое что а именно:
1)напишите общепринятый циклический оператор (лучше всего это (for do),(case of))как выглядит. 2)как сделать чтобы переменная была выбрана случайно программой. 3)как на языке делфи будет выглядить такое: if i-изменилась then begin ... end; если не понятно :как узнать изменилась переменная или нет. 4)как мне заранее переписать все мои image в одноимённый компонент тоже программно при событии onCreate. Последний раз редактировалось Ivanius, 31.07.2008 в 01:24. |
#2
|
|||
|
|||
![]() Я не супер автор, но ты... Можешь по русски нормально объяснить? Что первое, что второе?
|
#3
|
|||
|
|||
![]() Ну если перевести то в принципе понятно че хочет...
Вообще от условных переходов никуда не деться. Если в циклах, то для уменьшения количества юзать операторы break и continue, если просто так и для каких-то одинаковых переменных юзать case... Рандомно выбирать что-то тоже не проблема: оператор random генерирует число от 0 до 1. Потом умножаешь на максимальное число в твоем диапазоне и заодно можно округлить оператором round: i := round(random * 50) // i будет целое в диапазоне от 0 до 50... |
#4
|
||||
|
||||
![]() Ivanius, учим русский язык. Увижу еще одно такое сообщение - бан на неделю.
Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#5
|
|||
|
|||
![]() вот подучил, я так ясного ответа и не получил на свои пункты
![]() |
#6
|
|||
|
|||
![]() Если хочешь чтобы тебе код поправили, то его надо как минимум тут показать... Странный ты.
|
#7
|
||||
|
||||
![]() 1, case of - это не оператор цикла
есть три вида циклов: а) цикл с счетчиком: Код:
for <переменная>:=<нач. значение> to/downto <кон. значение> do <код>; Код:
while <условие> do <код>; Код:
repeat <код>; until <условие>; 3, добавить еще одну переменную 4, тебе надо в несколько Image загрузить одну картинку? Что делать, когда сломался комп: 1. Если вы юзер - делать ноги. 2. Если ремонтник - делать деньги. 3. Если вы программист - делать вид, что так было задумано. |
#8
|
|||
|
|||
![]() Цитата:
Это понятно. Просто если я его правильно понял у него в коде куча операторов перехода в которых он уже путается. Вот и предложил по возможности перейти от if then к case of. |
#9
|
|||
|
|||
![]() Цитата:
4)нет мне надо несколько картинок заранее загрузить куда-то мне говорили есть какой-то Imagelist куда вначале загружают а потом от туда достают когда надо отображать её. |
#10
|
||||
|
||||
![]() 3
Код:
var MyVar, OldVal: <тип>; ... if MyVar <> OldValue then begin OldValue:=MyVar; //Переменная изменилась end else //Переменная не изменилась Что делать, когда сломался комп: 1. Если вы юзер - делать ноги. 2. Если ремонтник - делать деньги. 3. Если вы программист - делать вид, что так было задумано. |
#11
|
|||
|
|||
![]() ещё разх спасибо теперь уже последний вопрос с имеджлистом как в него запихнуть эти изображения так чтобы они были глобальными мне просто надо их использовать во всех формах
![]() так к примеру можно будет: "img1.picture := form1.imagelist.picture " да и как сделать чтобы можно было добавлять не только БМП и иконки а и ДЖЕПЭГ (и,или) ГИФ Последний раз редактировалось Ivanius, 31.07.2008 в 16:20. |
#12
|
||||
|
||||
![]() Чтоб загрузить картинку в ImageList надо щелкнуть по компоненту два раза.
Чтобы загрузить картинку из него Код:
ImageList1.GetIcon(<индекс иконки>, Image1.Picture.Icon); Что делать, когда сломался комп: 1. Если вы юзер - делать ноги. 2. Если ремонтник - делать деньги. 3. Если вы программист - делать вид, что так было задумано. |
#13
|
|||
|
|||
![]() НЕужели от спасибо вам всё я разобрался все работает только компилируеться минут 10 из-за моих if then я так с циклами и не разобрался пытлася чо-то получалось а щас нет чото обьясните как мне писать на примерах луше сделайте для меня вот что у меня вот что есть кусок программы как мне его лучше реализовать
Код:
if ydar>=50 then begin if kritical<=krit then begin healBPAr:=healBPAr-realatkt*2; MessageBox(handle,pchar('Вы попали во врага на - '+inttostr(realatkt*2)),pchar('Информация'),8240); statistic.Lines.Add('попал HA: '+inttostr(realatkt*2)); label1.Caption := 'попал HA: '+inttostr(realatkt*2); man:=man-4; if healbpar<1 then exit.Enabled:=true; atac.enabled:= false; pobed:=pobed+1; end else begin if realatkt>0 then begin healBPAr:=healBPAr-realatkt; MessageBox(handle,pchar('Вы попали во врага на - '+inttostr(realatkt)),pchar('Информация'),8240); statistic.Lines.Add('попал HA: '+inttostr(realatkt)); label1.Caption := 'попал HA: '+inttostr(realatkt); man:=man-4; end else begin statistic.Lines.Add('Вы попали во врага на - 0dmg'); label1.Caption := 'Вы попали во врага на - 0dmg'; MessageBox(handle,pchar('Вы попали во врага на - '+inttostr(realatkt)),pchar('Информация'),8240); end; end; end; Последний раз редактировалось Ivanius, 01.08.2008 в 02:11. |
#14
|
|||
|
|||
![]() Поиск в папке (без просмотра поддиректорий):
Код:
procedure TForm1.FindFiles(Dir: string); var DirInfo: TSearchRec; r : Integer; begin r := FindFirst(Dir+'*.bmp', FaAnyfile, DirInfo); while r = 0 do begin if ((DirInfo.Attr and FaDirectory <> FaDirectory) and (DirInfo.Attr and FaVolumeId<>FaVolumeID)) then { тут твой код для обработки найденных; полный путь к файлу: Dir + DirInfo.Name } r := FindNext(DirInfo); end; SysUtils.FindClose(DirInfo); end; // например FindFiles('C:\Windows\') Последний раз редактировалось ART, 31.07.2008 в 21:03. |
#15
|
|||
|
|||
![]() так вы мне и не ответили как можно мой код оптимизировать или некак?
|