Форум: "Начинающим";
Текущий архив: 2006.10.22;
Скачать: [xml.tar.bz2];
ВнизНужна помощь!!! Найти похожие ветки
← →
АлексЧерных (2006-10-05 11:20) [0]Люди, помогите! На лабах препод задал задачу. Сделать не возможно. Помогите. Вот текст условия: При нажатии на кнопку текст надписи на ней становится наклонным, при повторном нажатии - снова обычным. Можно пользоваться только присвоениемм. Использовать условный опрератор НЕЛЬЗЯ. Помогите.
← →
clickmaker © (2006-10-05 11:21) [1]
> Использовать условный опрератор НЕЛЬЗЯ
а он тебе нужен там?
← →
АлексЧерных (2006-10-05 11:25) [2]А как же сделать??? Можно привести пример кода, плиз
← →
clickmaker © (2006-10-05 11:32) [3]Ну а как бы ты сделал с условием?
← →
TUser © (2006-10-05 11:32) [4]Угол := 0;
При клике
Угол := (Угол + A) mod (A * 2); // наприм, А = 45 градусов
Нарисовать надписть под вычисленным углом
← →
Плохиш © (2006-10-05 11:32) [5]font.style + [fsItalic]
font.style - [fsItalic]
← →
TUser © (2006-10-05 11:33) [6]> Плохиш © (05.10.06 11:32) [5]
Опс, я думал, что текст надо на канве нарисовать по наклонной линии.
← →
Плохиш © (2006-10-05 11:37) [7]
> TUser © (05.10.06 11:33) [6]
> > Плохиш © (05.10.06 11:32) [5]
>
> Опс, я думал, что текст надо на канве нарисовать по наклонной
> линии.
С такими знаниями и на лабе, я рыдал... :-)
← →
ЮЮ © (2006-10-05 11:40) [8]
> Плохиш © (05.10.06 11:32) [5]
font.style + [fsItalic]
font.style - [fsItalic]
И что, это решит задачу?
← →
clickmaker © (2006-10-05 11:42) [9]
> АлексЧерных (05.10.06 11:20)
и можно только одно присваивание сделать? Или неограниченно?
← →
Плохиш © (2006-10-05 11:42) [10]
> ЮЮ © (05.10.06 11:40) [8]
Всё зависит от того какую кнопку он выберет.
← →
clickmaker © (2006-10-05 11:44) [11]На самом деле задача решается с одной кнопкой и в 4 присваивания. Без единого if
← →
ЮЮ © (2006-10-05 11:46) [12]
> clickmaker © (05.10.06 11:44) [11]
Вот решение и найдно. По окрнчании лабов, clickmaker, надеюсь, покажет решение :)
← →
sniknik © (2006-10-05 11:51) [13]> На самом деле задача решается с одной кнопкой и в 4 присваивания. Без единого if
в одно
← →
sniknik © (2006-10-05 11:53) [14]а когда лабы кончаются? не хочу учителю "воспитательный" процесс портить. ;о))
← →
han_malign © (2006-10-05 11:53) [15]
> На самом деле задача решается с одной кнопкой и в 4 присваивания.
> Без единого if
эээ - а операциями можно пользоваться? тогда (:=, -, +, -) - присваивание одно...
← →
han_malign © (2006-10-05 11:58) [16]
> в одно
- без операций - три(и одно в самом начале - можно не считать, т.к. оговорена только реакция на кнопку)
← →
han_malign © (2006-10-05 12:01) [17]а еще можно классическим массивом с булевым индексом - хотя я бы, на месте преподавателя, посчитал это неявным if-ом...
← →
clickmaker © (2006-10-05 12:09) [18]Ну да, все зависит от ограничений... Потому как способов несколько
← →
Плохиш © (2006-10-05 12:09) [19]
> sniknik © (05.10.06 11:51) [13]
А мне твой вариант нравится :-)
← →
Наиль © (2006-10-05 12:12) [20]Очень часто использую:
procedure TForm1.Button1Click(Sender: TObject);
begin
Button1.font.style:=Button1.font.style+[fsItalic]-Button1.font.style*[fsItalic];
end;
← →
clickmaker © (2006-10-05 12:15) [21]
> [20] Наиль © (05.10.06 12:12)
блин, всю малину испортил... надо было хоть дать подумать человеку
← →
oxffff © (2006-10-05 12:18) [22]font.Style:=[fsItalic]-font.Style;
← →
Наиль © (2006-10-05 12:18) [23]
> блин, всю малину испортил... надо было хоть дать подумать
> человеку
Возможно ещё придётся подумать.
Писал по памяти. Наверняка, не без ошибки.
← →
oxffff © (2006-10-05 12:22) [24]Я тоже подзабыл.
Возможно придется сделать через вентиль вызова(call gate) и бит гранулярности.
А также повысив свой IRQL с PASSIVE до DISPATCH.
Не забыв подкорректировать TSS.
:)
← →
sniknik © (2006-10-05 12:29) [25]oxffff © (05.10.06 12:18) [22]
все... препод поставит оценку незаслуженно... ;о(
еще вариант
with TButton(Sender).Font do
Style:= TFontStyles(Byte(Style) xor 2);
← →
clickmaker © (2006-10-05 12:34) [26]Однако здесь везде есть что-то кроме присваивания.
А кто скажет вариант ВООБЩЕ без любых операторов, кроме присвоения?
← →
oxffff © (2006-10-05 12:41) [27]
> clickmaker © (05.10.06 12:34) [26]
> Однако здесь везде есть что-то кроме присваивания.
> А кто скажет вариант ВООБЩЕ без любых операторов, кроме
> присвоения?
Препод.
← →
sniknik © (2006-10-05 12:42) [28]> А кто скажет вариант ВООБЩЕ без любых операторов, кроме присвоения?
ты? ;о))
← →
han_malign © (2006-10-05 12:43) [29]
> font.Style:=[fsItalic]-font.Style;
- а дотошный преподаватель поставит еще и, скажем, fsBold?
> А кто скажет вариант ВООБЩЕ без любых операторов, кроме присвоения?
- тоже классически вариант, при этом альтернативный стиль может быть произвольным, а не только одним флагом отличаться. Но т-с-сс...
Как вариант - вообще стили не трогать, а переключать флажок начинающийся на Parent... :)
← →
clickmaker © (2006-10-05 12:43) [30]
> [28] sniknik © (05.10.06 12:42)
ну после [22], право, как-то неловко...
← →
sniknik © (2006-10-05 12:49) [31]с чего?
[22] кстати на 1 асемблерную команду больше чем [25] (их там 2! ;о)) а [25] одна хотя паскалевской писанины больше.
← →
oxffff © (2006-10-05 12:49) [32]
> han_malign © (05.10.06 12:43) [29]
>
> > font.Style:=[fsItalic]-font.Style;
>
> - а дотошный преподаватель поставит еще и, скажем, fsBold?
>
Button1.Font.Style:=(Button1.Font.Style-[fsItalic])+([fsItalic]-Button1.Font.Style);
← →
oxffff © (2006-10-05 12:55) [33]
> clickmaker © (05.10.06 12:34) [26]
> Однако здесь везде есть что-то кроме присваивания.
> А кто скажет вариант ВООБЩЕ без любых операторов, кроме
> присвоения?
Ждем вас Маэстро
← →
clickmaker © (2006-10-05 12:59) [34]
> [33] oxffff © (05.10.06 12:55)
не, не буду позориться. Тем более, что так жестко наверно задача не стояла
← →
han_malign © (2006-10-05 12:59) [35]
> Ждем вас Маэстро
- забава такая у гусаров была, не связанная с войной, вином и женщинами... :)
← →
oxffff © (2006-10-05 13:06) [36]han_malign ©
> А кто скажет вариант ВООБЩЕ без любых операторов, кроме присвоения?
- тоже классически вариант, при этом альтернативный стиль может быть
произвольным, а не только одним флагом отличаться. Но т-с-сс...
Мне действительно сейчас в голову ничего не приходит.
Но очень интересно узнать как сделать исключительно одним оператором присваивания (без -,+,xor,not,and,or и ASM).
Прошу вас han_malign.
← →
clickmaker © (2006-10-05 13:09) [37]
> одним оператором присваивания
четырьмя
← →
han_malign © (2006-10-05 13:11) [38]помимо гусаров, этим еще сверхзвуковые самолеты меряются... :)
← →
oxffff © (2006-10-05 13:12) [39]Ого. Прошу вас код в студию.
← →
han_malign © (2006-10-05 13:13) [40]
> > одним оператором присваивания
> четырьмя
- конкретно в OnClick - тремя
Страницы: 1 2 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.10.22;
Скачать: [xml.tar.bz2];
Память: 0.54 MB
Время: 0.041 c