Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Длина потока...


Lirk ©   (2009-06-15 22:46:00) 

Может кто обьяснит, почему размер потока ограничен значением типа
Cardinal, в то время как в VCL это тип int64?
Это недогляд или принипиальное ограничение?


Vladimir Kladov   (2010-01-29 19:15:00) [1]

А нужен? В принципе, вызывается Windows.Arc(Canvas.Handle, ... и все работает. Но можно и обновить, если очень хочется.


Dy1   (2010-01-28 19:44:00) [2]

> Vladimir Kladov © (18.06.09 19:31) [14]
> Ага, я вот нашел недавно один баг: неправильно работал TCanvas.Arc

давно :)


SPeller   (2009-06-23 02:40:00) [3]


> Lirk

Ты забыл одну вещь - KOL бесплатен и никто денег за его развитие не получает. В отличие от того же VCL. Поэтому твой гонор в сторону "сделайте то, сделайте вот это" крайне неуместен, а на фоне плохого понимания сути KOL и некоторых элементарных основ дельфей выглядит еще и глупо. Никто не заявлял на главной странице "изучить KOL легко". Однако многие его изучили. И у тебя получится. Если захочешь.


Vladimir Kladov   (2009-06-18 19:31:00) [4]

Ага, я вот нашел недавно один баг: неправильно работал TCanvas.Arc. Жутко критично.


D[u]fa   (2009-06-17 10:42:00) [5]

TBitmap - объект. PBitmap - указатель на объект, теперь понятнее?
StrSatisfy - работает на ура (лично у меня), конкретно покажи пример кода с ошибкой.


> И таких примеров можно привести много.

Пожалуйста, в студию =)


> Что касается 64К строк. А почему бы не разбить библиотеку
> на несколько файлов? Все контролы с формой в одну, Потоки
> в другую
> Приведение типов в третью...

обсуждалось неоднократно... но если вкратце - переноса не будет =)


> Вот вы к примеру выложили модуль GIF. А где сжатие? Стандартный
> модуль для Delphi его включает.

Не смотрел этот модуль.. Дык сжатие реализовано, но не включено? или не реализовано и надо чтоб кто-то реализовал?


> Что касается самих тормозов... Последнее обновление было
> давно.
> Ошибок куча. На сайте много битых ссылок. Никому ничего
> не надо.


Согласен лишь с тем что обновлений давно не было. Надо "скинуться" фиксами\дополнениями и зарелизить новую версию. Про какие кучи ошибок идет речь - не понимаю...


Lirk   (2009-06-16 20:45:00) [6]

Что касается 64К строк. А почему бы не разбить библиотеку на несколько файлов? Все контролы с формой в одну, Потоки в другую
Приведение типов в третью...


Lirk   (2009-06-16 20:37:00) [7]

А на счёт тормозов, извените за то что вышла опечатка.

Что касается самих тормозов... Последнее обновление было давно.
Ошибок куча. На сайте много битых ссылок. Никому ничего не надо.

Вот вы к примеру выложили модуль GIF. А где сжатие? Стандартный модуль для Delphi его включает.

Книга заморожена. И к ней тоже много вопросов.
Или я чего-то не понимаю... Например про типы. В заголвке стоит TBitmap
А речь идёт о PBitmap.

Вот цитата стр.53

Объект растрового изображения объектного типа TBitmap создается конструкторами NewBitmap( W, H ) - создает "зависимое от устройства" растровое изображение (DDB - Device Dependent Bitmap) ширины W и высоты H пикселей;
И так везде, с каждым типом

пробовал StrSatisfy( s, p )
строка "кот" маска "к?т"
выдало false
И таких примеров можно привести много.


Lirk   (2009-06-16 20:13:00) [8]

Да... но только в VCL
В KOL это typecast не работает. Проверьте если не верите.


Vladimir Kladov   (2009-06-16 19:47:00) [9]

Приведение типа, или typecast, описан в справке по Delphi. I64(i), где i:Int64, и Int64(j), где j: I64. Никаких функций для этого не требуется, так как внутренняя структура этих типов данных полностью совпадает. Никто не мешает использовать Int64, и там, где требуется I64, делать typecast. Символ компиляции можно, но их уже и так очень много. Кроме того, все эти IFDEF/ENDIF увеличивают число строк кода, что мешает удерживать размер kol.pas в пределах 64К строк (ограничения в компиляторе, дальше проблемы с отладчиком).

О каких тормзах (без О) речь?


Lirk   (2009-06-16 19:05:00) [10]

Пожалуста

Function Int64_2I64(a_:int64):I64;
var
v:integer;
begin
v:=a_;
result.Lo:=v;
result.Hi:= a_ shr 32;
end;

var
STR_:String;
STR_:= int64_2str(Int64_2I64(9000000000));


Дмитрий К   (2009-06-16 18:34:00) [11]


Lirk   (16.06.09 18:30) [6]
> и функцию написал...

Интересно было бы посмотреть.


Lirk   (2009-06-16 18:30:00) [12]

Читаю. Вот цитата из книги по KOL
В Delphi, начиная с версии 5, появился тип данных Int64, для работы с 8-байтными целыми числами. Но в более ранних версиях Delphi этого типа данных не было. Для того, чтобы возможно было с ними работать и в старших версиях Delphi, в KOL вводится свой собственный тип данных I64 и разработан набор функций для работы с этим типом данных:
................................................
................................................
Никто не мешает, тем не менее, использовать встроенный в Delphi младших версий тип данных Int64 (но для преобразования таких чисел в строку и обратно я рекомендую все-таки использовать функции Int64_2Str, Str2Int64, выполняя соответствующие приведения типа данных). Использование прочих вышеуказанных функций имеет смысл, только если проект разрабатывается на Delphi 3 или 2.

Вот всё что скзано.
"выполняя соответствующие приведения типа данных."
А где функция привидения типов?
Неужели так долго её написать и вставить в библиотеку, а то вообще ввести символ условной компиляции котрый напямую позволит использовать int64?
То что приводить надо это я и так понял и функцию написал...
Но у вас что за трмоз? Или уже всё это есть а я не знаю?


MTsv DN   (2009-06-16 18:13:00) [13]

RTFM!!!


Lirk   (2009-06-16 17:13:00) [14]

мдя про ребилд забыл...
Ну хорошо. Получил я значение типа int64. Как его первести в строку?
В VCL это делвет IntToStr. А в KOL?


D[u]fa   (2009-06-16 16:39:00) [15]

Как понять ноль эмоций?) ребилд делал? что за условный поиск? конкретно какая функция


Lirk   (2009-06-16 13:33:00) [16]

Включал я её. Ноль эмоций. И вообще много функций не работает. Например условный поиск в строке.


D[u]fa   (2009-06-16 09:57:00) [17]

Есть такая вещь:
 STREAM_LARGE64        - turns on support of streams (and files) of size larger
                         then 4 Gbytes. Data type Int64 used for parameters of
                         the most of methods and functions in such case. (Note:
                         Int64 was introduced since Delphi5, so in earlier Delphi
                         versions using this symbol is not possible).


Наверх

Титульная страница Поиск, карта сайта Написать письмо