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

Вниз

Перенос координат в центр Image...   Найти похожие ветки 

 
Dir   (2005-01-30 01:27) [0]

Народ!Помогите!
На форме есть Image и Edit.
В Edit выводятся координаты мыши на Image.
Но нуль - левый верхний угол.
Как перенести начало координат в другую точку, например в середину Image. То есть, чтобы в Edit выводились координаты относительно новой точки?
Спасибо за внимание.


 
Andy BitOff ©   (2005-01-30 01:32) [1]

Вычти из твоих координат ширину/высоту имаджа деленную на 2.

Вообще то это надо бы понимать.


 
olookin ©   (2005-01-30 01:32) [2]

Я лично не понял...


 
Andy BitOff ©   (2005-01-30 01:36) [3]

olookin ©   (30.01.05 01:32) [2]
Я лично не понял...


А чего не понял-то?


 
Dir   (2005-01-30 01:49) [4]

Не..
Глючит, почему-то!
Может, я не правильно поясняю!
Проблема , если подробнее, такая:
на Image нарисован прямоугольник,
координаты должны показываться только в области него и
нуль должен быть в левом нижнем углу прямоугольника!
Но прямоугольник не обязательно по центру.
Во, вроде так!


 
olookin ©   (2005-01-30 03:04) [5]

[3] Andy BitOff ©   (30.01.05 01:36)

А ничего не понял... Именно - вопроса не понял...


 
olookin ©   (2005-01-30 03:05) [6]

[4] Dir   (30.01.05 01:49)

Нуль чего?


 
ninja ©   (2005-01-30 11:34) [7]


const
 R: TRect = (Left: 30; Top: 30; Right: 150; Bottom: 100);

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 Image1.Canvas.FillRect(Rect(0,0,Image1.Width, Image1.Height));
 Image1.Canvas.Rectangle(R);
end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
 if (X>=R.Left) and (X<=R.Right) and (Y<=r.Bottom) and (Y>=r.Top) then
   Edit1.Text:="X: " + IntToStr(X - R.Left) + "; Y: " + IntToStr(R.Bottom - Y)
 else Edit1.Text:="";
end;


так чтоля?


 
Dir   (2005-01-30 11:38) [8]

Начало координат должно быть перенесено в левый нижний угол прямоугольника. Тоесть координаты относительно фигуры, как в графических приложениях, а не относительно окна рисования.


 
ninja ©   (2005-01-30 11:47) [9]


> координаты должны показываться только в области него и
> нуль должен быть в левом нижнем углу прямоугольника!

а я что написал?
или ты хочешь, чтобы при событии MouseMove в качестве X и Y передавались координаты относительно прямоугольника? :)


 
Dir   (2005-01-30 17:15) [10]

Ninja, спасибо за help!
Вроде пашет!


 
Просто Джо ©   (2005-01-31 04:09) [11]


> Вроде пашет!


Ну, это не надолго...



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

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

Наверх





Память: 0.47 MB
Время: 0.1 c
1-1106819789
SlaT
2005-01-27 12:56
2005.02.13
Delphi и обработка нажатий клавиш в др. приложениях


1-1106753319
MakedoneZ
2005-01-26 18:28
2005.02.13
На счет совместимости приложений и координат компонентов формы.


11-1091019541
murtix
2004-07-28 16:59
2005.02.13
несколько форм


1-1106552754
kingdom
2005-01-24 10:45
2005.02.13
Построение контура кривой Безье


1-1106842407
Knoxville
2005-01-27 19:13
2005.02.13
Загрузка из ресурсов





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский