![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Я был наслышан в свое время о том, что разработчики языков программирования и различных оболочек частенько оставляют "сюрпризы" простым юзерам. Но ТАКОГО прикола я не ожидал... А Вы знали, что если в программе использовать Series для TChart и задать первую точку в ней через Series.AddXY со значением, большим чем 1818, то компилятор начнет дико ругаться и указывать на совершенно неведомую ошибку (причем в последней строчке END.) Это я понял через несколько мучительных часов проб и ошибок, когда просто других вариантов у меня не оставалось, кроме как сам Delphi меня опрокидывает. И действительно, оказалось, что просто нельзя задавать первое значение больше, чем 1818
. Английская версия википедии подсказала, что в этом году был подписан т.н. "Договор св. Мари" в городке Делфи(тогда он еще по другому назывался), штат индиана, США.М.б. есть еще какие-нибудь "приколы", как считаете? |
|
#2
|
||||
|
||||
|
Это больше на баг смахивает, нежели на прикол.
|
|
#3
|
|||
|
|||
|
Вполне возможно, хотя я не понимаю того кода, который вы выложили
. |
|
#4
|
|||
|
|||
|
Я вот другой прикол знаю, однажды он мне очень много крови попил, код вроде прозрачный, а среда на нем бредит.
Код:
procedure TForm1.Button1Click(Sender: TObject); var c:variant; begin case TVarType(c) of varEmpty: ; varNull: ; varSmallint: ; varInteger: ; varSingle: ; varDouble: ; varCurrency: ; varDate: ; varOleStr: ; varDispatch: ; varError: ; varBoolean: ; varVariant: ; varUnknown: ; varShortInt: ; varByte: ; varWord: ; varLongWord: ; varInt64: ; varStrArg: ; varString: ; varAny: ; varTypeMask: ; varArray: ; varByRef: ; end; Inc(c); end; |
|
#5
|
|||
|
|||
|
А еще вот так, попробуйте скомпилировать:
Код:
procedure TForm1.Button1Click(Sender: TObject); var c:byte; begin case TVarType(c) of varEmpty: ; varNull: ; varSmallint: ; varInteger: ; varSingle: ; varDouble: ; varCurrency: ; varDate: ; varOleStr: ; varDispatch: ; varError: ; varBoolean: ; varVariant: ; varUnknown: ; varShortInt: ; varByte: c:=0 div 0; varWord: ; varLongWord: ; varInt64: ; varStrArg: ; varString: ; varAny: ; varTypeMask: ; varArray: ; varByRef: ; end; Inc(c); end; |
|
#6
|
||||
|
||||
|
Только что проверил, без никаких приколов постороил график f(x)=1855, x=[0..35];
Что-то в твоем коде не так. |
|
#7
|
|||
|
|||
|
А что в таком коде может быть не так? Я меняя значение второй входной переменной, постепенно вышел на 1818. Может просто у меня версия Delphi 7 с багом...
Код:
procedure TForm1.Button1Click(Sender: TObject); begin Series3.AddXY(15,2000,''); end; |
|
#8
|
||||
|
||||
|
Цитата:
|
|
#9
|
|||
|
|||
|
Спасибо, таким способом проблема легко решается
![]() |
|
#10
|
|||
|
|||
|
Многобукафнеасилил
![]() |
|
#11
|
|||
|
|||
|
Цитата:
|