2013-07-20 2 views
0

나는 경량의 GUI 툴킷으로 작업 중이다. 이것은 X11 (xlib), Win32 및 매우 기초적인 GUI를 지원하는 다른 시스템에서 쉽게 이식 가능하도록 설계되었습니다. - Win32에서의 X11 리눅스에서 정상 창더 나은 GUI 툴킷은 무엇입니까?

  1. 는 OS가 제공 Windows 서비스를 사용하려면 :

    는 지금까지 내가 아는 한, 주로 두 가지 아키텍처가 있습니다. 이 접근 방식에서 모든 컨트롤은 부모와 동일한 창 개체입니다. OS로부터 이벤트를 수신하여 처리하고, 자체 페인팅 표면 등을 갖습니다.

  2. OS 제공 창은 최상위 창 (메인 애플리케이션 창, 대화 상자 등)에만 사용합니다. 모든 하위 창은 간단히 부모 윈도우의 표면에 그려져있다. 이 경우 툴킷은 부모 - 자식 관계를 관리해야하며 이벤트는 기본 창에서만 수신되며 컨트롤에 전달되어야합니다.

널리 사용되는 GUI 툴킷은 어떤 변형을 사용합니까? Qt? wxWidgets? FLTK? 다른 사람? 왜 그들은이 접근 방식을 선택합니까?

결과 GUI 툴킷의 크기와 속도는 어떻게 다릅니 까?

+0

문제가 수정됩니다. – johnfound

+1

첫 번째를 선호하는 이유는 네이티브 컨트롤의 모든 뉘앙스를 얻기가 극도로 어렵 기 때문입니다. 예를 들어, 호버에 광선 효과. 심지어 모든 개발 노력이 들어간 Qt조차도 Windows 나 OS X (두 번째 방법을 사용함)에서 이러한 권리를 얻지 못합니다. 그래서, 처음은 쓸모없는 것이 아닙니다. 그러나 두 번째 방법은 컨트롤을 만드는 방법에 대한 궁극적 인 힘을주는 것과 같은 몇 가지 이점이 있습니다. –

+0

질문이 다시 열리기를 희망하여 다시 최소화되었습니다. :) – johnfound

답변

1

나는 아직 코멘트를 할 수 없지만, 지금 X로가는 것에 대해 강력히 조언한다. Wayland (또는 Mir, 아마)는 Linux의 주 렌더링 관리자가 될 것이다.

그리고 첫 번째 방법과 주요 문제가 있다고 생각 : 당신은 두 시스템의 완벽한 지식을 얻을 수 있습니다

  • (? X &는 Win32 (그리고 왜 OS의 X)에 대한 코코아)
  • X가 약간의 구현 세부 사항을 변경하면이를 고려하여 코드를 변경해야하지만 최상위 수준의 항목 만 사용하면 변경 가능성이 낮습니다.
  • t 및 코드 중복의 톤이있을 수 있습니다 (예 :. Win32 및 X ...에 대한 처리 체크 박스)는
+0

그와는 반대로 동의하지 않습니다. X 윈도우 시스템은 웨이 랜드 (Wayland)가 주류가 된 후에도 오래 동안 살 수 있습니다. 왜냐하면 유닉스 풍의 풍미가 너무나 상업적인 것들이 많기 때문입니다. 아마도 결코 웨이 랜드 방식으로 가지 않을 것입니다. UNIX 시스템을 지원하고 싶지 않다면 Wayland가 좋은 방법 일 것입니다. 그렇지 않으면 X를 지원해야합니다. 꼭해야 할 것입니다. – DejanLekic

+0

또한 Wayland에서 X 응용 프로그램을 실행하는 데 사용할 수있는 EGLX와 같은 프로젝트가 있습니다. – MauganRa

관련 문제