Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.01.14;
Скачать: [xml.tar.bz2];

Вниз

кнопочка)   Найти похожие ветки 

 
Loona   (2006-12-24 22:14) [0]

Подскажите пожалуйста, как мне сделать так чтобы при каждом нажатии кнопки какое-то число увеличивалось, т.е. нажали один раз сравнивается с 0 второй раз с 2 и тд....
Заранее спасибо...


 
Kolan ©   (2006-12-24 22:19) [1]

«Подскажите пожалуйста, как мне сделать так чтобы при каждом
нажатии кнопки какое-то число увеличивалось»


var
 КакоеТоЧисло: Integer;

procedure TForm3.BitBtn1Click(Sender: TObject);
begin
 КакоеТоЧисло := КакоеТоЧисло + 1;
end;



«т.е. нажали один раз сравнивается с 0 второй раз с 2 и тд&#133»

Это я не понял&#133


 
Anatoly Podgoretsky ©   (2006-12-24 22:20) [2]

> Kolan  (24.12.2006 22:19:01)  [1]

А это значит, что не + 1, в + 2


 
Loona   (2006-12-24 22:22) [3]

Это опечатка))) Имела в виду что сначала переменная сравнивается с 0, потом при повторном нажатии кнопки с 1 , потом с 2 и тд))


 
Kolan ©   (2006-12-24 22:24) [4]

«А это значит, что не + 1, в + 2»

Хех :)

«Это опечатка)))»

Ну тогда см [1]


 
Loona   (2006-12-24 22:26) [5]


>
> var
>  КакоеТоЧисло: Integer;
>
> procedure TForm3.BitBtn1Click(Sender: TObject);
> begin
>  КакоеТоЧисло := КакоеТоЧисло + 1;
> end;


У меня вот такой текст
for j:=1 to maxy do begin
    pix:=ImgObj.ScanLine[j-1];
    for i:=1 to maxx do begin
     color:=round($FF*CMatrix[i,j]);
     if color<N then begin
       pix^:=0; inc(pix);
       pix^:=0; inc(pix);
       pix^:=255; inc(pix);
     end else begin
     if color>$FF then colorx:=$FF else colorx:=color;
     pix^:=colorx; inc(pix);
     pix^:=colorx; inc(pix);
     pix^:=colorx; inc(pix);
   end; end; end;
   Image1.Canvas.CopyRect(rect(0,0,maxx,maxy),ImgObj.Canvas,rect(0,0,maxx,maxy));
   end;


где при нажатии кнопки, постепенно изображение заполняется красным цветом)) вот, только не получается один раз нажимаю все нормально, а второй раз ничего не происходит, хотя я и писала N=N+1 :(((
Подскажите что не так )


 
Kolan ©   (2006-12-24 22:28) [6]

&laquo;N=N+1&raquo;

А что это такое?

А где объявлены переменные?


 
Loona ©   (2006-12-24 22:30) [7]

в начале юнита


 
Loona ©   (2006-12-24 22:30) [8]

а локальные в начале процедуры...


 
Loona ©   (2006-12-24 22:33) [9]

procedure TForm1.Button6Click(Sender: TObject);
    var
    i,j, color:integer;
    pix: pbyte;
    colorx:byte;
  begin
     N:=0;
    for j:=1 to maxy do begin
    pix:=ImgObj.ScanLine[j-1];
    for i:=1 to maxx do begin
     color:=round($FF*CMatrix[i,j]);
     if color<N then begin
       pix^:=0; inc(pix);
       pix^:=0; inc(pix);
       pix^:=255; inc(pix);
     end else begin
     if color>$FF then colorx:=$FF else colorx:=color;
     pix^:=colorx; inc(pix);
     pix^:=colorx; inc(pix);
     pix^:=colorx; inc(pix);
   end; end; end; N:= N+1;
   Image1.Canvas.CopyRect(rect(0,0,maxx,maxy),ImgObj.Canvas,rect(0,0,maxx,maxy));
   end;

end.


вот совсем с начала процедуры, ещё мне что-то про глобальные переменные говорили, это не то случайно????


 
Kolan ©   (2006-12-24 22:39) [10]

&laquo;N=N+1&raquo;

А что должно от этого изменится?
И как объявленя N? Где?


 
Loona ©   (2006-12-24 22:47) [11]

N: integer ; в начале проги в самом начале....
Мне нужно чтобы с нажатием этой кнопоски менялось значение N, с каждым нажатием.... а как это сделать я не знаю..., и не знаю правильно ли я все написала и где точно нужно объявить N :((((


 
Loona ©   (2006-12-24 23:02) [12]

помогите............


 
Kostafey ©   (2006-12-24 23:26) [13]

Гм. Если задача сводится к тому чтобы увеличить значение N при каждом нажатии, то ее объявление должно оставаться в начале модуля.
А запись N:=0; в начале процедуры нужно убрать.
Или я опять самогон с одеколоном перепутал ?


 
Virgo_Style ©   (2006-12-24 23:43) [14]

А я бы, вероятно, N в тэг записал, или в поля TForm1.
Но это второстепенное, а в главном, скорее всего, прав
Kostafey ©   (24.12.06 23:26) [13] .


 
Loginov Dmitry ©   (2006-12-25 00:05) [15]

> for j:=1 to maxy do begin
>    pix:=ImgObj.ScanLine[j-1];
>    for i:=1 to maxx do begin
>     color:=round($FF*CMatrix[i,j]);
>     if color<N then begin
>       pix^:=0; inc(pix);
>       pix^:=0; inc(pix);
>       pix^:=255; inc(pix);
>     end else begin
>     if color>$FF then colorx:=$FF else colorx:=color;
>     pix^:=colorx; inc(pix);
>     pix^:=colorx; inc(pix);
>     pix^:=colorx; inc(pix);
>   end; end; end;
>   Image1.Canvas.CopyRect(rect(0,0,maxx,maxy),ImgObj.Canvas,
> rect(0,0,maxx,maxy));
>   end;


Дас из фантастишь!


 
Loona ©   (2006-12-25 00:57) [16]

Я если честно так и не поняла в чем дело!!!
Где в итоге нужно N прописывать?? и почему ее 0 не надо приравнивать???

А N=N+1 писать там где и у меня??? просто у меня почему то при втором нажатии ничего не меняется....ууаааа :((


 
Германн ©   (2006-12-25 01:02) [17]


> Loona ©   (25.12.06 00:57) [16]
>
> Я если честно так и не поняла в чем дело!!!
> Где в итоге нужно N прописывать?? и почему ее 0 не надо
> приравнивать???
>
> А N=N+1 писать там где и у меня??? просто у меня почему
> то при втором нажатии ничего не меняется....ууаааа :((

Кажный раз при нажатии кнопочки ты "забываешь" всё, приравнивая N к нулю.


 
Плохиш ©   (2006-12-25 01:03) [18]


> Loona ©   (25.12.06 00:57) [16]
> Я если честно так и не поняла в чем дело!!!
> Где в итоге нужно N прописывать?? и почему ее 0 не надо
> приравнивать???

0 N надо присваивать ОДИН раз в, например, в Form1Create.

> ууаааа

Это чё за фигня. Вам, девушка, пора логическое мЫшление вклЮчить, а то дальше кухни не уедете.


 
Loona ©   (2006-12-25 01:07) [19]


> Это чё за фигня. Вам, девушка, пора логическое мЫшление
> вклЮчить, а то дальше кухни не уедете.

эт так, крик души :) уж нельзя и поплакаться.

ВСЕМ СПАСИБО!!! буду пробывать =)


 
Kostafey ©   (2006-12-25 01:10) [20]

> Где в итоге нужно N прописывать??

Можно оставить в начале модуля, но это будет не совсем корректно с точки зрения стиля программирования, красоты кода, будет говорить об уровне профессионализма не в лучшую сторону, снизит читаемсть кода, будет являться посыкой к нарушению принципа модульности программы, etc...
> [14] Virgo_Style ©   (24.12.06 23:43)
Короче, осавь ее там где она есть.


> почему ее 0 не надо приравнивать???

Но ведь тебе нужно, чтобы при следующем вызове значение N увеличивалось так? Так вот, присваивая 0 этого никогда не произойдет.


 
Loona ©   (2006-12-25 01:10) [21]

У МЕНЯ ВСЕ ЗАРАБОТАЛО!!!!!! ЕЩЕ РАЗ ОГРОМНОЕ СПАСИБО!!!!!


 
inkvizitor ©   (2006-12-25 09:22) [22]


> Дас из фантастишь!

я я зе гуд.данке шо.

> Loona ©   (25.12.06 01:10) [21]

покаж, заценим unreal program?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.01.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.014 c
15-1166995339
PHPdeveloper
2006-12-25 00:22
2007.01.14
опять запрос, но другой вопрос :)


3-1161759493
Kolan
2006-10-25 10:58
2007.01.14
Как скопировать БД.


2-1166759786
Руслан56
2006-12-22 06:56
2007.01.14
Немогу написать код для посчета и вывода результатов.


9-1141572255
VolanD666
2006-03-05 18:24
2007.01.14
Collision Detection &amp;&amp; SpeedFactor


15-1166621379
*Pavel
2006-12-20 16:29
2007.01.14
Борьба с IcqSnif





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский