Привязки QT для Delphi 2010 - PullRequest
3 голосов
/ 03 ноября 2010

Почему никто не разрабатывает привязки QT для Delphi.

Раньше у нас был интегрированный QT 2.x как CLX в Delphi.

Я действительно ненавижу оболочки CLX, так как они былиглючит и трудно расширяется.

Но почему никто не создает список API внешних вызовов DLL для использования (так же, как JCL оборачивает Windows API).

Так сложнокод такого API функции отображения?Или, может быть, классы QT не могут быть представлены вызывающим сторонним пользователям?

Любые подсказки в этом направлении приветствуются.

Ответы [ 4 ]

1 голос
/ 03 ноября 2010

Мне удалось портировать qt4.pas с http://users.telenet.be/Jan.Van.hijfte/qtforfpc/fpcqt4.html.

Первоначально он написан для Lazarus, но мне удалось перенести его на Delphi.

Нужно сделать следующее

  1. объявить

    Тип PUInt = ^ Integer; PTRUINT = PUInt; PtrInt = ^ Integer; PPtrInt = ^ PtrInt;

  2. закомментируйте все вызовы с помощью параметров "qword", поскольку в Delphi не поддерживаются четыре слова

  3. закомментируйте "{$ mode objfpc} {$ H +}", так как это материал Lazarus
  4. заменить все "cdecl; внешний" на "cdecl; перегрузка; внешний"

Чем демки могут быть скомпилированы и отлично работать с Delphi.

1 голос
/ 03 ноября 2010

Я рекомендую вам подождать VCL +, то есть привязки Qt, поставляемой со следующей версией Delphi.

Проблема в том, что Qt в значительной степени основан на макросах и C ++. Так что "плоский API" Qt довольно многословен и велик. Интересно, как EMB создаст свою собственную привязку VCL +, но я определенно буду ждать их реализации для использования Qt в любом проекте Delphi.

Если вы не можете ждать и действительно хотите кроссплатформенный пользовательский интерфейс (с поддержкой Mac O $), я рекомендую использовать http://www.twinforms.com/products/wxformsdelphi, а не Qt. Он основан на отдельной DLL, но его легче разрабатывать, и он хорошо поддерживается / документирован.

1 голос
/ 03 ноября 2010

qtintf.dll - это искомая DLL-библиотека API, а Qt.pas соответствующая единица импорта.

0 голосов
/ 03 ноября 2010

Из того, что я слышал, очевидно, что библиотека кроссплатформенных компонентов для Delphi XE2 (версия должна быть выпущена в следующем году) будет основана на QT, вроде CLX, только она действительно должна работать правильно.

...