V
Vadik(R)
Есть 6 вопросов по Делфи, которые не дают мне спокойно спать:
1. Как понять вариантную запись вида
x=record;
case integer of
0: (q:integer);
1: (q:string);
Не понятно в ней то, что в переключателе не написано имя переменной, тип которой Integer. Это вообще как?
И еще насчет вариантных записей. Если сменить переключатель, а потом снова вернуть прежний, то старые значения полей возобновяться, остануться пустыми и зануляться или будут хаотичными? - У переключателя нет привязки к переменным, зависящим от переключателя. При изменении переключателя значения полей не меняются.
Чем отличаеться обычная запись от "пакед"?
2. Как узнать когда соединение между сокетами точно установлено и можно посылать данные, не боясь, что они не дойдут?
3. Есть обработчик события onTimer1. Интервал таймера - 1 миллисекунда. Пусть там что-то вида:
x:=x+110;
y:=y+x;
z:=x*y;
Бывает так, что одна процедура уже не доделаеться, как начинает выполняться вторая, то есть произойдет:
x:=x+110;
y:=y+x;
x:=x+110;
z:=x*y;
y:=y+x;
z:=x*y;
Как мне сделать, чтобы код выполнялся последовательно:
x:=x+110;
y:=y+x;
z:=x*y;
x:=x+110;
y:=y+x;
z:=x*y;
4. Переменные, описанные в разделе var в том месте, где написано Form1: TForm1; всегда зануляються автоматически или могут принимать случаные значения?
5. Процедура FillChar может заполнять только массив символов? Или массив челых чисел тоже может? И коректно ли она работает во втором случае? - Да, корректно.
6. Как писать на элементах формы иероглифы? Когда я их пишу - они просто потом стираються, даже квадратики не вставляються.[/s]
x=record;
case integer of
0: (q:integer);
1: (q:string);
Не понятно в ней то, что в переключателе не написано имя переменной, тип которой Integer. Это вообще как?
И еще насчет вариантных записей. Если сменить переключатель, а потом снова вернуть прежний, то старые значения полей возобновяться, остануться пустыми и зануляться или будут хаотичными? - У переключателя нет привязки к переменным, зависящим от переключателя. При изменении переключателя значения полей не меняются.
Чем отличаеться обычная запись от "пакед"?
2. Как узнать когда соединение между сокетами точно установлено и можно посылать данные, не боясь, что они не дойдут?
3. Есть обработчик события onTimer1. Интервал таймера - 1 миллисекунда. Пусть там что-то вида:
x:=x+110;
y:=y+x;
z:=x*y;
Бывает так, что одна процедура уже не доделаеться, как начинает выполняться вторая, то есть произойдет:
x:=x+110;
y:=y+x;
x:=x+110;
z:=x*y;
y:=y+x;
z:=x*y;
Как мне сделать, чтобы код выполнялся последовательно:
x:=x+110;
y:=y+x;
z:=x*y;
x:=x+110;
y:=y+x;
z:=x*y;
4. Переменные, описанные в разделе var в том месте, где написано Form1: TForm1; всегда зануляються автоматически или могут принимать случаные значения?
5. Процедура FillChar может заполнять только массив символов? Или массив челых чисел тоже может? И коректно ли она работает во втором случае? - Да, корректно.
6. Как писать на элементах формы иероглифы? Когда я их пишу - они просто потом стираються, даже квадратики не вставляються.[/s]