Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (версии 2009, 2010 Weaver, 2011 Fulcrum)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111

Открыть новую тему     Написать ответ в эту тему

data man



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обсуждаем новые возможности и баги
Просьба писать только про Delphi 2009 и выше - по остальным версиям есть соответствующая тема.
Вопросы вареза здесь не обсуждаются !!!
См. также:
Известные важные баги Delphi 2010:

Описание________________________________________________ Исправлено Решение/Альтернатива_____________________
  1. Внимание !  Деинсталляция D2010 нарушает работу D2007 и D2009 !  
При деинсталляции удаляются CC3280MT.DLL и CC3290MT.DLL из Windows\System32,   необходимые для работы D2007 и D2009 соответственно.
Сделайте резервные копии
  2. Code Formatter не работает, если не инсталлирован пакет моделирования.   В нем также присутствует множество багов. Используйте с осторожностью.   1.   JEDI CodeFormat 2.44 SVN Snapshot (~750Kb)   Требуются JCL и JVCL  
2.GExperts with Formatter
  3. Не работает F1 в Object Inspector Update 2   IDEFixPack 2.9 от Andreas Hausladen
(dev. snapshots)
  4. Если IDE начинает падать с сообщением "Out of resources", возможно, что поврежден .res файл проекта. Удалить его, запустить IDE, открыть проект - новый .res файл будет создан автоматически.
  5. В редакторе не работает Class Completion, если в декларируемом классе есть поля с шаблонами. Перед декларированием поля добавить public или private и т.д.
  6. TTrayIcon.ShowBalloonHint() не работает на ОС ниже Vista [QC 77561] Update 2 * Установить Update 2   * ИЛИ почитать о причинах и решении проблемы на форуме embarcadero и в QC   * ИЛИ воспользоваться альтернативой, например Cooltray 4.4.0
  ...      


Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 14:28 26-08-2009 | Исправлено: data man, 18:27 06-08-2010
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Включен TPngImage, ImageList остался старый апишный.

 
Да, именно так, к сожалению.
 

Цитата:
"Enable runtime themes"
 
Не помогает это...  

 
Верно, не помогает.
 
 
 
Добавлено:

Цитата:
Лично я для таких целей давно уже пользую компоненты AlphaSkins

Вот не хочется, блин, добавлять новые сущности — устанавливать целый еще один пакет компонент, большинство которых нафиг не нужны, и т. п. Мне представляется все-таки оптимальным решение от 0D0A. Если б его еще сильнее почистить, убрав оттуда вообще все, кроме TPngImageList, а из последнего тоже по-максимуму удалить все лишнее, все ненужные методы...
Удивительно, что до сих пор никто не сделал такого проекта.

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 16:51 18-11-2010
mcka

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens в своем обзоре я писал:
18. Свойство Glyph до сих пор не умеет работать с BMP ARGB 32 bit.  
Обойти это можно через Action и TImageList
 
 
Чтобы стандартный компонент TImageList корректно работал с иконками ARGB 32 bit нужно следующее:
 
1. Добавить Manifest. В последней версии включается в свойствах проекта "Enable runtime themes"  
2. Добавить TImageList на форму. Обязательно установить ему методы:
    ColorDepth := cd32Bit;
    DrawingStyle := dsTransparent
 
Примечание: При изменении этих методов набор очищается
 
3. Добавить в набор картинку PNG ARGB 32 bit  с размерами (width и height) которые указаны в TImageList.
 
Примечание: .ico файлы лучше не использовать, т.к. в набор добавляються не те размеры, если в файле содержится несколько иконок.
Примечание: помните про левый верхний пиксель.
 
 
P.S. Пишите программы красивые! Используйте иконки ARGB 32 bit, используйте DoubleBuffered, используйте для рисования ф-ции в модулях Themes и UxTheme, проверяйте программу на мерцание при изменении размера главного окна, проверяйте программу на другом dpi.

Всего записей: 65 | Зарегистр. 04-09-2007 | Отправлено: 17:04 18-11-2010 | Исправлено: mcka, 17:29 18-11-2010
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Свойство Glyph до сих пор не умеет работать с BMP ARGB 32 bit.  
Обойти это можно

Речь-то шла вовсе не о Glyph с BMP, а о Toolbar с PNG

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 17:30 18-11-2010
mcka

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens  Вот в Delphi XE использую стандарные компоненты: TMainMenu, TImageList и TToolBar
 
Почувствуйте любовь к каждому пикселю:
   
   

 
 
 
Другой набор Disable icons в TImageList НЕ использую,
 
но  
 
в TImageList свой DoDraw для TMainMenu когда ItemDisable "код"
 
в TToolBar свой OnCustomDraw для градиента "код"

Всего записей: 65 | Зарегистр. 04-09-2007 | Отправлено: 18:02 18-11-2010 | Исправлено: mcka, 20:57 18-11-2010
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Почувствуйте любовь к каждому пикселю

О да, вы хороший, я чувствую

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 18:20 18-11-2010
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mcka
Вроде речь идет о ситуации, когда темы выключены.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 18:24 18-11-2010
mcka

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins не вопрос, обновил  

Всего записей: 65 | Зарегистр. 04-09-2007 | Отправлено: 20:23 18-11-2010
MatrixNT



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток!
Давненько назрел вопрос... каким образом, и вообще, возможно ли получить список запущенных процессов в 64битной системе?
В 32х битной есть куча примеров на winapi через функций CreateToolhelp32Snapshot, но в 64 битной системе можно получить тока список PID процессов и имена.exe. Путь к исполняемому файлу отображается тока у 32 битных приложений

Всего записей: 115 | Зарегистр. 21-12-2006 | Отправлено: 21:11 18-11-2010
0D0A

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens

Цитата:
Если б его еще сильнее почистить, убрав оттуда вообще все, кроме TPngImageList, а из последнего тоже по-максимуму удалить все лишнее, все ненужные методы...  

Так уже почистил, больше убирать особо нечего
 
 
Добавлено:
mcka
   
В первой колонке используется TImageList c cd32Bit, dsTransparent. Во второй TPngImageList. В нижнем ряду картинка с прозрачностью 50%.

Всего записей: 158 | Зарегистр. 21-09-2009 | Отправлено: 23:05 18-11-2010
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
0D0A,
скажи, пожалуйста, а твои PngComponents сделаны на основе PngComponents вот этих?  
http://www.thany.org/article/32/PngComponents  
Этот сайт сейчас не отвечает, скачать с него ничего невозможно, но на него многие ссылаются.

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 22:09 19-11-2010
0D0A

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens
Угу

Всего записей: 158 | Зарегистр. 21-09-2009 | Отправлено: 02:32 20-11-2010
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
0D0A
Ясно. Странно, что проект остановился. Если б его не было, то его надо было бы выдумать. :) А тут наоборот — он был, но быть перестал. Удивительно, странно, невероятно. Похоже, не обошлось без вмешательства мистических сил. ;)

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 02:41 20-11-2010
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens
Не обошлось без вмешательства кодегира. Думаете откуда у них в студии появилась поддержка png?

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 12:43 20-11-2010
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если вызвать модальную форму (Form2.ShowModal) и попытаться мышкой активизировать основную форму, то основная форма, естественно, останется неактивной, но модальная форма подмигнет три раза. А можно ли сделать так, чтоб не подмигивала?

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 14:01 20-11-2010
0D0A

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens

Код:
procedure WMSetCursor(var message: TWMSetCursor); message WM_SETCURSOR;
procedure TMainForm.WMSetCursor(var message: TWMSetCursor);
begin
  if not ((message.HitTest = HTERROR) and
    (message.MouseMsg = WM_LBUTTONDOWN)) then
      inherited;
end;
 
как-то так

Всего записей: 158 | Зарегистр. 21-09-2009 | Отправлено: 14:42 20-11-2010
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
0D0A
спасибо, но, о боже, неужели так хитро?
Посмотри, пожалуйста, приложения в Samples, содержащие AboutBox, — например, Football или Swat. Там вызов из меню просто AboutBox.ShowModal;, но модальная форма не мерцает при клике на основную форму.

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 15:24 20-11-2010
0D0A

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens
Значит у них родитель (TCreateParams.WndParent) не главная форма. Application.Handle наверно. В старых дельфях всегда так было и ничего не мигало, счас пофиксили, а тебе все равно не нравится

Всего записей: 158 | Зарегистр. 21-09-2009 | Отправлено: 18:10 20-11-2010
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
0D0A

Цитата:
а тебе все равно не нравится

Ну, это не то чтобы не нравится, а, понимаешь, вот так бывает, что зациклишься на каком-то незначительном вопросе и, как дурак, не можешь сдвинуться с места, пока не найдешь ответ. Я завожу новый проект с модальной формой — мерцает. Загружаю пример из Samples с формой About (Football, например) — не мерцает. Я под лупой исследую все свойства обеих форм — не нахожу поля, ответственного за мерцание. Вообще нет ничего подозрительного. В кодах обработки событий тоже ничего подозрительного нет.
Ну, хорошо, поторошу Football, удаляя из него вообще все, кроме чистых форм. Не мерцает. Точно такой же по виду и объему проект «с нуля» — мерцает. Все абсолютно свойства форм не отличаются ничем. Свойства проекта тоже одинаковы. Но один мерцает, другой — нет.
Как, почему? Мистика?

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 22:33 20-11-2010
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens
Application.MainFormOnTaskbar?

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 22:49 20-11-2010
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins
не сообразил что-то. Это где такое свойство?

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 23:03 20-11-2010
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (версии 2009, 2010 Weaver, 2011 Fulcrum)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru