Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
alexs1989
0 / 0 / 0
Регистрация: 28.12.2011
Сообщений: 21
#1

Вычислить координату "X".

07.03.2012, 18:28. Просмотров 716. Ответов 12
Метки нет (Все метки)

Требуется ваша подсказка пожалуста помагите разобратся собственно что мне нужна
найти автоматически корденат серого "X" написал ват такой код и дальше всю голову сламал при компеляцые выдаёт вот такую ошибку [Error] Unit.pas[77]: Undeclared identifier: 'X'
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
procedure TForm1.Button3Click(Sender: TObject);
var
 _w,_h, i, j: Integer;
begin
 With Image1.Picture.Bitmap.Canvas do
 _w := image1.Picture.Bitmap.Width;
 _h := Image1.Picture.Bitmap.Height;
 for i:= 0 to _w-1 do
 for j:= 0 to _h-1 do
begin
 if Image1.Picture.Bitmap.Canvas.Pixels[i,j] = clSilver and (x>i) and (x<i) then
begin
 ShowMessage('Найдено '+inttostr(i));
 Exit;
 end;
 end;
end;
 
end.
Вот Собственно картинка по середине с серым кубеком
 Комментарий модератора 
Теги кода исправлены модератором. Для оформления кода Delphi следует выделить этот код и на панели редактирования сообщения нажать кнопку: "DELPHI".
0
Миниатюры
Вычислить координату "X".  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.03.2012, 18:28
Ответы с готовыми решениями:

В каждом слове текста замените "а" на букву "е", если "а" стоит на четном месте, и заменить букву "б" на сочетание "ак",
В каждом слове текста замените &quot;а&quot; на букву &quot;е&quot;, если &quot;а&quot; стоит на четном...

Из слов "Работа", "крест", "тон" составить фразу "Кто не работает, тот не ест" и определить ее длину
Из слова &quot;Работа&quot;,&quot;крест&quot;,&quot;тон&quot; составить фразу:&quot;Кто не работает, тот не ест&quot; и...

На форме располагаются компоненты: редактор Edit; линейка ScrollBar; радионабор с опциями "Цветы", "Деревья", "Рыбы", "Звери"
Доброго времени суток, 2 курс 2 семестр, пришли, препод раздал задачи, сказал...

Тысячные числа исправлять к примеру с "1200" на "1 200", "12000" на "12 000" и т.д
Собственно числа исправлять к примеру с &quot;1200&quot; на &quot;1 200&quot;, &quot;12000&quot; на &quot;12 000&quot;,...

В слове Х перед каждой буквой "к", которой предшествует буква "с", вставить букву "н"
Привет всем) вот условие задачи:В слове Х перед каждой буквой &quot;к&quot;, которой...

12
Puporev
Модератор
54352 / 41944 / 28977
Регистрация: 18.05.2008
Сообщений: 98,798
07.03.2012, 19:12 #2
Зачем тебе это
Pascal
1
and (x>i) and (x<i)
Добавлено через 1 минуту
Достаточно и этого
Delphi
1
2
3
4
5
6
7
for i:= 0 to _w-1 do
for j:= 0 to _h-1 do
if Image1.Picture.Bitmap.Canvas.Pixels[i,j] = clSilver then
begin
 ShowMessage('Найдено '+inttostr(i));
 Exit;
end;
0
alexs1989
0 / 0 / 0
Регистрация: 28.12.2011
Сообщений: 21
07.03.2012, 19:30  [ТС] #3
А ну это понятно а вот нащёт этого
Код
and(x>i) and (x<i)
менябы чтоб он разпознал от начала и до канца и распознал его как знак минус "-"
0
Puporev
Модератор
54352 / 41944 / 28977
Регистрация: 18.05.2008
Сообщений: 98,798
07.03.2012, 19:33 #4
А что такое х? Это даже нигде не объявлено.
0
alexs1989
0 / 0 / 0
Регистрация: 28.12.2011
Сообщений: 21
07.03.2012, 19:39  [ТС] #5
Цитата Сообщение от Puporev Посмотреть сообщение
А что такое х? Это даже нигде не объявлено.
Я его обазначил как вод дапустим когда в редакторе Paint водиш мышю и там таке вот как x,y верхняя и нижняя
0
Puporev
Модератор
54352 / 41944 / 28977
Регистрация: 18.05.2008
Сообщений: 98,798
07.03.2012, 19:42 #6
Цитата Сообщение от alexs1989 Посмотреть сообщение
как вод дапустим когда в редакторе Paint водиш мышю
Так это нужно делать в процедуре
Delphi
1
2
procedure TForm1.PaintBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
0
alexs1989
0 / 0 / 0
Регистрация: 28.12.2011
Сообщений: 21
07.03.2012, 19:52  [ТС] #7
Цитата Сообщение от Puporev Посмотреть сообщение
Так это нужно делать в процедуре
Delphi
1
2
procedure TForm1.PaintBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
Я это пытался сделать ну ток я не пойму как сделать чтоб при назатие на именно на кнопку нашол данный свет и прочёл кардинат например с x 234 >>> до x 290
0
Puporev
Модератор
54352 / 41944 / 28977
Регистрация: 18.05.2008
Сообщений: 98,798
07.03.2012, 20:09 #8
Извини, но я не понимаю что ты делаешь и что тебе нужно.
0
Non4ik
0 / 0 / 0
Регистрация: 08.03.2012
Сообщений: 3
08.03.2012, 23:29 #9
alexs, если я правильно понял, то нужно читать в направлении pos: Tpoint; label1.caption:=inttostr(pos.x); Что то вроде этого. Хотя согласен с тем, что постановка вопроса не совсем корректная
0
Lirrk
Заблокирован
09.03.2012, 14:53 #10
Puporev,
Зачем это нужно понять проще простого. Сейчас многие пытаются писать анализаторы игровых ситуаций онлайновых игр. Это вот как раз и есть. Отыскать нужное на игровом поле.
Только вот подход не тот. При большом поле такой простенький анализ будет занимать секунды.
это из-за функции Pixels
Вообще для таких вещей используют ScanLine
0
Puporev
Модератор
54352 / 41944 / 28977
Регистрация: 18.05.2008
Сообщений: 98,798
09.03.2012, 14:58 #11
Цитата Сообщение от Lirrk Посмотреть сообщение
Сейчас многие пытаются писать анализаторы игровых ситуаций онлайновых игр. Это вот как раз и есть.
Ну так ты умный и при том экстрасенс, а я что прочитал на то и ответил.
0
Non4ik
0 / 0 / 0
Регистрация: 08.03.2012
Сообщений: 3
09.03.2012, 20:56 #12
да и вообще.. каким это должно быть значение переменных x и i, чтобы выполнилось условие (x>i) and (x<i)? ((:
0
Lirrk
Заблокирован
09.03.2012, 22:05 #13
Puporev,
Бедный клерк предсказал гибель Титаника за несколько лет. Он не был экстрасеносом.
Он просто знал ситуацию, и умел наблюдать.
PS А быть умным это что-то предрассудительное?
0
09.03.2012, 22:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.03.2012, 22:05

Дана строка. Заменить все буквы "м" на "н". Заменить все вхождения сочетаний букв "про" на "нет"
2.Дана строка. 1) Заменить все буквы м на н. 2) Заменить все вхождения...

Замените в слове Х все буквы "а" на сочетание "ку", а сочетание "ку" на букву "б"
Написать программу, заменяющую в слове Х все буквы &quot;а&quot; на сочетание &quot;ку&quot;, а...

Работа с компонентами "TDateTimePicker", "TMonthCalendar" и "TCalendar"
Всем привет, помогите пожалуйста разобраться с этими вопросами... 1. Как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru