Вниз
Скачать: CL | DM;

Delphi & Assembler   Найти похожие ветки 

← →
Blitz   (2006-02-20 23:50) [0]

Здравствуйте. Подскажите, пожалуйста, как можно обойтись без использования локальной переменной x в данном случае?
procedure TForm1.Button1Click(Sender: Оbject);
var
 x: Integer;
begin
 x := Form1.Height;
 asm
         MOV EAX, x
         INC EAX
         MOV x, EAX
 end;
 Form1.Height := x;
end;


← →
Yanis ©   (2006-02-21 00:25) [1]

form1.Height := form1.Height + 1;


← →
Blitz   (2006-02-21 00:37) [2]

2 Yanis: Действительно без икса :)

Но мой вопрос не в этом. Хотелось сделать нечто похожее на:
 MOV EAX, Form1.Height


← →
Дмитрий Белькевич ©   (2006-02-21 00:56) [3]

height - свойство, а не переменная.
Смотрим, что пишуть в ассембелере на height := height + 1:

mov edx, [eax + $4c]
inc edx
call tcontroll.setheight.

Всё логично: забираюь из fheight, и потом методом setheight устанавливают. Так чта... Халявы не будет.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.026 c
15-1141210404
Knight
2006-03-01 13:53
2006.03.26
Property как массив по default


1-1140945024
nap<>
2006-02-26 12:10
2006.03.26
Панель инструментов


2-1142233429
leonidus
2006-03-13 10:03
2006.03.26
Отображение с Label.caption символов по их 16-тиричному коду


2-1142279229
LordOfRock
2006-03-13 22:47
2006.03.26
Дерево и много текста


2-1142067307
dabreezy
2006-03-11 11:55
2006.03.26
Как правильно запускать несколько потоков?




   Наверх