TDBNavigator необычное поведение с включенными темами - PullRequest
1 голос
/ 23 декабря 2009

Недавно я столкнулся с некоторым необычным поведением при использовании стороннего компонента Navigator в Delphi 2007, когда после установки для свойства 'Flat' значения True кнопки не оставались плоскими, как они должны были с включенными темами, но делали это после того, как я снял флажок Включить Темы из моего файла проекта и перекомпилированы моей программы. Это явно не казалось правильным, так как другой сторонний компонент Navigator, с которым я экспериментировал, работал соответственно с «Flat», установленным в «True» и «Themes Enabled». Затем я попробовал то же самое с TDBNavigator от Delphi и снова столкнулся с той же проблемой, что и с первым сторонним компонентом Navigator. Исследуя этот вопрос в Интернете, я обнаружил очень мало того, что, в отличие от предыдущих версий Delphi, Delphi 2007 поддерживает тематические приложения «из коробки», а не добавляет еще один компонент для поддержки тем WinXP. Учитывая все вышесказанное, я надеюсь, что кто-то еще мог испытывать аналогичные проблемы при использовании TDBNavigator или других сторонних компонентов Navigator в тематических приложениях со свойством flat, установленным в значение true. Любые комментарии или предложения по этому вопросу приветствуются.

Ответы [ 2 ]

1 голос
/ 23 декабря 2009

Обходной путь на TDBNavigator, ошибка TSpeedButton

http://blog.issamsoft.com/index.php?q=en/node/37

1 голос
/ 23 декабря 2009

Поддержка тем была добавлена ​​в Delphi 2007, но не распространяется на 100% VCL (сетки, например, не поддерживают темы). Я подозреваю, что у вас проблема с TDBNavigator.

Что касается ваших проблем с "Сторонним навигатором", невозможно дать вам какой-либо совет, потому что вы не указали, какой элемент управления "Стороннего навигатора" вы используете. Не зная конкретных названий компонентов, вы не предоставили нам никакой информации, которую можно использовать, пытаясь помочь.

Delphi 2010 предоставляет полную поддержку тем, включая сетки. Я не тестировал DBNavigator, так как я не использовал его с Delphi 2 или около того. Однако обратите внимание, что в Delphi 2009/2010 появились другие проблемы со старым кодом, поскольку начиная с Delphi 2009 VCL основан на Unicode. Некоторый код, который использует строки и предполагает, что Char имеет размер 1 байт, может быть проблемой.

...