Перейти к содержанию
Fire Monkey от А до Я

Kitty

Пользователи
  • Постов

    792
  • Зарегистрирован

  • Посещение

  • Победитель дней

    16

Активность репутации

  1. Like
    Kitty отреагировална RoschinSpb в Как правильно использовать MultiresBitmap в TImageList?   
    image1.Bitmap.Assign(imagelist1.Bitmap(TSizeF.Create(258, 344),0));
    Imagelist1 ни чего не знает о масштабе. Просто согласно указанного размера выбирается наиболее подходящая картинка и растягивается таким образом, чтобы вписаться в размеры. Т.е. в данном случае будет выбираться картинка с размерами наиболее близкими к 258, 344. Тут надо самостоятельно определять масштаб и умножать на него размеры.
      Scale := Canvas.Scale;   Image1.Bitmap.Assign(imagelist1.Bitmap(TSizeF.Create(258 * Scale, 344 * Scale),0)); Если хотите лишить себя удовольствия разбираться с масштабами, то воспользуйтесь компонентом TGlyph, который сам рисует учитывая свои размеры и масштаб.
    См. также маленький пример.TestScaledImageList.zip
  2. Like
    Kitty отреагировална RoschinSpb в Как правильно использовать MultiresBitmap в TImageList?   
    image1.MultiResBitmap.Count = 2 Да, в памяти обе картинки. Чтобы добавить ложку меда, они хранятся в png-формате до первого обращение непосредственно к TBitmap. По этой причине если к примеру нужно узнать ширину картинки, то лучше обращаться к элементу коллекции
    W := Image1.MultiResBitmap[I].Width; // остается в запакованном виде чем к битмапу
    W := Image1.MultiResBitmap[I].Bitmap.Width; // распаковываем картинку, хотя она не нужна. А вообще говоря по этой причине лучше не использовать TImage для хранения изображений в fmx-файлах.
    Как я писал в статье что если мы захотим в Run-Time динамически формировать большое количество контролов с картинками (например, пункты TListBox), то мы будем иметь множество копий одних и тех же графических данных. При использовании TImageList каждый пункт будет содержать только номер изображаемой картинки.
     
    Нет, 1.3 не бывает. У моего Nexus 7: Scale = 1.33125   Картинки в основном сжимаются. Только если картинка чуть-чуть (1/5) меньше чем надо, то она растягивается. 
    Т.е. если есть картинки в масштабе 1 и 2 и требуемый масштаб 1.2, то будет использована картинка в масштабе 1. Если требуемый масштаб 1.21 то будет использована картинка в масштабе 2.
     
  3. Like
    Kitty получил реакцию от Gingercat в Впечатления от Update1 в C++ Builder XE8   
    Так исправить С++ мне кажется можно простым путем. Надо чтобы Embarcadero написало реально ОДНО приложение на С++ Builder и чтобы строк в нем было не менее 500. Почему 500, потому, что например С++ Builder XE7 просто начинал вываливаться после такого кол-ва строк.
    Нету, как я понимаю, сейчас в природе приложения для Андроида написанного на С++ Builder. Вот отсюда и проблемы. Если бы Embarcadero написало реально ОДНО приложение, увидев проблемы которые есть на поверхности, то это было реанимировало С++ среду.
  4. Like
    Kitty отреагировална Brovin Yaroslav в TServerSocket TClientSocket в FireMonkey   
    Ребята, форум существует для ответов на любые вопросы. Если вы считаете, что автор вопроса поленился и не захотел попробовать найти информацию, НЕ пишите и не отвечайте ему, если вам не хочется. Чем разводить бессмысленные словесные перепалки. Эмоции здесь совершенно ни к чем.
     
    Спасибо за понимание
  5. Like
    Kitty получил реакцию от Gingercat в Впечатления от Update1 в C++ Builder XE8   
    Update 1 ничем не помог пациенту под названием С++ Builder.
    Проект полностью рабочий в С++ Builder XE7 полностью становиться не рабочим в XE8.
    1. Пропали надписи на кнопках. Однако в инспекторе объектов у этих двух кнопках надписи есть. На дополнительной форме тоже пропали все надписи на кнопках. Баг.
    2. Запускаем проект. Пропало содержимое ListView1! Поворачиваю устройство на 90 градусов и данные в ListView1 появляются. В С++ Builder XE7 проблем нет. Баг ХЕ8.
    3. Идем дальше. Перезапускаем проект. После запуска начинаю поворачивать устройство назад вперед на 90 градусов. После каждого поворота форма постепенно вытягивается и в конечном итоге вылазит за экран. В С++ Builder XE7 форма просто при поворотах логично упирается в края экрана, а не медленно нарастает. Баг ХЕ8. Не работают привязки.
    4. Перезапускаем проект. Поворачиваем устройство чтобы появились данные в ListView1 (баг из пункта 2). Нажимаем на ListView1. Появляется форма. Пропал тулбар с кнопками на этой форме. Чтобы его увидеть, надо снова крутануть устройство. Баг.
    5. Идем в IDE. Щелкаем в инспекторе объектов двойным щелчком на названии события формы FormShow. Студия начинает кричать, что событие не определено, хотя в коде событие есть и нормально работает в предыдущей версии RAD XE7. IDE не видит своего события! Студия не видит половину своих событий в инспекторе объектов. Работать становиться просто не возможно. Баг IDE.
     
    Пока кто нибудь из разработчик embarcadero не напишет самостоятельно проект хоты бы на строк 500 в С++ Builder XE8, то столкнувшись со всеми проблемами, возможно удаться embarcadero реанимировать С++ Builder.
    Сейчас С++ Builder XE8 Up1 не является средой для разработки под Андроид.
  6. Like
    Kitty получил реакцию от Rusland в Впечатления от Update1 в C++ Builder XE8   
    Обидно другое. Я ничего не имею против новых багов в новой версии. Не понятно, почему все что работало на предыдйщей версии просто умирает в новой версии.
    Тогда начинаешь надеяться на апдейты как на манну небесную, а на выходе кукиш с маслом...
  7. Like
    Kitty отреагировална Alex7wrt в Определение количества ядер процессора   
    Нашел ответ - TThread.ProcessorCount. 
  8. Like
    Kitty отреагировална Brovin Yaroslav в Добавить вид в Multi-Device Designer   
    Добрый день,
     
    Посмотрите эту статью: FireUI Multi-Device Designer and working with Views
  9. Like
    Kitty отреагировална xenon54 в Впечатления от Update1 в C++ Builder XE8   
    Жуть...
  10. Like
    Kitty отреагировална Gingercat в Впечатления от Update1 в C++ Builder XE8   
    По счастью или нет, также пользуюсь плюсами. Полностью подтверждаю - это что-то, с чем-то. Свои баги перечислять не буду - подолбавшись плюнул, но вот беда с привязкой, а также с FormShow - идентична. А еще в 8-ке ругнулось на отсутствие Androidapi.JNI.GraphicsContentViewText честно говоря, и разбираться не стал.
  11. Like
    Kitty отреагировална master webs в [TListBox] Как отобразить итемы в виде панелей?   
    Добрый день со стилями все очень просто кликаете по нужному компоненту правой там есть два пунк которые вам нужны 
    edit custom stail (свой уникальный стиль)
    edit default stail (дефолтный стиль для всех копий компонентов по умолчанию)
    при клике перейдете в редактор  а там все просто  

  12. Like
    Kitty отреагировална Brovin Yaroslav в [TListBox] Как отобразить итемы в виде панелей?   
    Добрый день,
    Делаете стиль для итема, в виде панельки Устаналиваете в лист боксе размер итема: ItemHeight, ItemWidth. Для всех итемов устанавливаете ваш стиль Все готово. P.S. TGridLayout не лучший выбор при большом количестве итемов. Так как листбокс реально грузит стили только для видимой части итемов. И при прокрутке только меняет стили местами. А TGridLayout загрузит все элементы. В итоге проигрышь по памяти и по скорости.
  13. Like
    Kitty отреагировална Brovin Yaroslav в TEdit.SelSelText (вставка текста)   
    У TEdit, есть специальный метод по замене выделенного текста новой строкой:
    procedure Replace(const AStartPos: Integer; const ALength: Integer; const AStr: string); Поэтому в вашем случае замена будет выглядить так:
    Edit.Replace(Edit.SelStart, Edit.SelLength, NewString);
  14. Like
    Kitty отреагировална Brovin Yaroslav в Обновление Update1 Delphi XE8   
    Вы не совсем правы, Subscription или Support& Maintenance появился еще во времена Borland, но в тот момент его приобретение было не всегда оправдано. Сейчас ситуация несколько изменилась. Приобретение Subscription дает возможность не только получать обновления на текущую версию, но и владельцам получать бесплатно новые версии, которые как вы правильно заметили выходят два раза в год. Годовой контракт на Subscription для Delphi Professional стоит $324, а апгрейд на новую версию Delphi Professional стоит $592 (два релиза – это $592*2). Более подробно про Subscription можно прочитать тут http://www.embarcadero.com/ru/products/rad-studio/update-subscription   Если у вас есть вопросы по ценам и лицензиям, вы всегда можете обратиться в московское представительство Embarcadero email Russia.Info@embarcadero.com тел. +7 (495) 708 4393.   Наш форум все-таки больше имеет техническую направленность и я не совсем компетентен в вопросах ценообразования и лицензий
  15. Like
    Kitty отреагировална xenon54 в Слишком частый OOM в редакторе StyleBook   
    Здравствуйте. Постоянно вылетает out of memory в редакторе стилей при нажатии на кнопку "Apply and Close". Открываю студию заново, захожу в редактор, делаю что-то, сохраняю, все норм. Захожу еще раз в редактор, что-то делаю и OOM. Раньше это возникало хотя бы после 3-5 заходов в редактор, а сейчас уже после каждого, думается мне, что через пару дней я вообще там ничего не смогу делать. С чем это может быть связано? Если день насыщен работой со стилями, то студию загружаю по 50 раз на дню, устал
  16. Like
    Kitty отреагировална Brovin Yaroslav в Слишком частый OOM в редакторе StyleBook   
    Проблему воспроизвел, багу завел. Спасибо Xenon54
  17. Like
    Kitty отреагировална master webs в Событие InputBox при клике ListBoxItem   
    разобрался может кому  будет нужно procedure TForm1.shopcartItemClick(const Sender: TCustomListBox;   const Item: TListBoxItem);   var edit: TListBoxItem; begin if shopcart.Selected <> nil then  begin edit:=shopcart.Selected; InputBox('Изменить количество', '', edit.StylesData['textstyle'].ToString,     procedure(const AResult: TModalResult; const AValue: string)     begin     edit.StylesData['textstyle']:= AValue;     end); end;
  18. Like
    Kitty отреагировална kami в TServerSocket TClientSocket в FireMonkey   
    Сам не люблю индейцев, но у TidTCPServerSocket до подключений можно достучаться так:
    procedure THeaderFooterForm.btn2Click(Sender: TObject); var   ConnList: TList<TidContext>;   i: Integer; begin   ConnList:=IdTCPServer1.Contexts.LockList;   try     for i := 0 to ConnList.Count-1 do       ConnList[i].Connection.IOHandler.Write(bla-bla-bla);   finally     IdTCPServer1.Contexts.UnlockList;   end; ...
  19. Like
    Kitty отреагировална xenon54 в TServerSocket TClientSocket в FireMonkey   
    ссылка
  20. Like
    Kitty отреагировална Brovin Yaroslav в Как скрыть MultiView на определенном табе или форме?   
    Всем доброго дня, 
     
    Проблему пока решили только для iOS. Для этого нужно выставить ControlType=Platform для TMutliView и всех вложенных в него контролов.
  21. Like
    Kitty отреагировална Brovin Yaroslav в Разработка настольной версии клиента для форума по FireMonkey с использованием FireMonkey   
    Добавил сортировку топиков в форуме и фильтрацию вопросов (решен, не решен).
    Так же добавил полосу с подчиненными разделами:

  22. Like
    Kitty получил реакцию от Andrey Efimov в Release Notes for XE8 Update 1   
    Release Notes for XE8 Update 1
    http://docwiki.embarcadero.com/RADStudio/XE8/en/Release_Notes_for_XE8_Update_1
    fix list:
    http://edn.embarcadero.com/article/44470
     
  23. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в PrimeMusic - Приложение для скачивания и прослушивания музыки с сайта www.primemusic.ru   
    Обновленная версия
    поддержка Android 5.x обновленный дизайн  

     
    Скачать с офф. сайта
  24. Like
    Kitty получил реакцию от Brovin Yaroslav в Release Notes for XE8 Update 1   
    Release Notes for XE8 Update 1
    http://docwiki.embarcadero.com/RADStudio/XE8/en/Release_Notes_for_XE8_Update_1
    fix list:
    http://edn.embarcadero.com/article/44470
     
  25. Like
    Kitty получил реакцию от AngryOwl в Release Notes for XE8 Update 1   
    Release Notes for XE8 Update 1
    http://docwiki.embarcadero.com/RADStudio/XE8/en/Release_Notes_for_XE8_Update_1
    fix list:
    http://edn.embarcadero.com/article/44470
     
×
×
  • Создать...