2011-12-24 65 views
47

Tôi mới sử dụng Qt và không hoàn toàn hiểu được sự khác biệt giữa Dự án Nhanh Qt và Dự án Widget Qt.Tiện ích Qt Nhanh so với Qt

Tôi hy vọng sẽ tạo một chương trình vẽ một mạng các hình lục giác mà người dùng có thể xoay và cắt, cũng như xoay quanh và phóng to và thu nhỏ. Nó cuối cùng sẽ là một bộ điều khiển MIDI. Loại dự án nào sẽ tốt hơn cho điều này và tại sao?

Tôi hy vọng điều này sẽ hoạt động trên cả nền tảng máy tính để bàn và thiết bị di động.

+1

Dành một chút thời gian trên trang web [Qt Quick] (http://qt.nokia.com/qtquick/) và xem các ví dụ. Nếu đó là những gì bạn cần, hãy sử dụng nó. Nếu không, có cho dự án widget Qt bình thường, nhưng nền tảng di động có thể sẽ là một vấn đề. – Mat

Trả lời

28

Qt Quick là giao diện người dùng kiểu điện thoại thông minh, khai báo có hỗ trợ nhiều chuyển đổi hình ảnh động thú vị phổ biến trong các ứng dụng dành cho điện thoại thông minh. Nhanh chóng cũng là một lựa chọn tốt để phát triển nhanh chóng một mẫu thử nghiệm. Qt Widget là mô hình giao diện người dùng theo định hướng máy tính để bàn truyền thống.

Ngay bây giờ (trước Qt5), Qt Hỗ trợ nhanh cho các tính năng của hệ thống máy tính để bàn thiếu (nhưng cải thiện). Không có nhiều hỗ trợ cho các menu, thanh công cụ, hộp thoại và các hành vi máy tính để bàn chuẩn khác trong Quick, trong khi Widget hỗ trợ các yếu tố đó rất tốt.

Bạn có muốn ứng dụng của mình trông và cảm thấy tự nhiên trên nền tảng máy tính để bàn và máy tính bảng hay bạn đang xây dựng một ứng dụng đơn giản xung quanh tiện ích con tùy chỉnh của riêng mình? Như Mat đã nói, nếu Qt Quick hỗ trợ các tính năng bạn muốn, đó có thể sẽ là cách tiếp cận nhanh nhất của bạn. Nếu bạn muốn xây dựng các phiên bản máy tính để bàn đầy đủ tính năng, Qt Widget có lẽ là lựa chọn tốt nhất của bạn.

+0

Tôi muốn cả hai. :) Sử dụng tiện ích Qt ngay bây giờ. – Anthony

+0

Câu trả lời này phải được loại bỏ, chỉnh sửa hoặc giảm giá khi chúng tôi đang ở trong một bài viết Qt 5.0, chúng tôi thậm chí còn tiếp cận 6,0 và Qt Widgets đã được thay thế bởi QML Widgets. –

+0

Câu trả lời hoặc câu hỏi? Có vẻ như bạn đang nói rằng câu hỏi không còn liên quan nữa. – AndrewS

4

Qt Đặt mặc định thành QML, phương ngữ khai báo JSON có bật ECMAscript nội tuyến. Với các widget Qt, các bảng định kiểu có thể được thiết kế bởi nhà thiết kế và nhà phát triển thực hiện mã hóa C++ gốc.

QML được xử lý tại thời gian chạy. Trong khuôn khổ mọi thứ có thể chạy cùng nhau, sự khác biệt chỉ thêm tính linh hoạt vào việc ra quyết định của kiến ​​trúc sư phần mềm.

2

Thứ nhất, tôi nghĩ bạn nên bắt đầu với Widget. Widget UI trợ giúp để tìm hiểu qt dễ dàng bổ sung nếu expriences trước đây của bạn là về những điều front-end bạn sẽ tìm hiểu nhanh chóng dễ dàng.

19

Là một người phát triển các ứng dụng qt một cách chuyên nghiệp, tôi sẽ chọn qml trên các vật dụng bất kỳ ngày nào.

Tiện ích rất tốt cho những thứ rất cơ bản, nhưng một khi bạn cần tạo một thứ gì đó thú vị hơn một chút, tiện ích sẽ sớm bị lỗi.

Qml đơn giản là cách linh hoạt hơn, bạn có thể neo các mục bất cứ nơi nào bạn muốn thay vì sử dụng hệ thống bố cục giới hạn của tiện ích con. Có hầu như không có lỗi nền tảng phụ thuộc trong khi các vật dụng có đầy đủ các. Và hệ thống ràng buộc tài sản giúp bạn dễ dàng giữ ui của bạn đồng bộ với mô hình của bạn.

+2

Xin cảm ơn! Tôi vừa quyết định bắt đầu với QML/QtQuick, dựa trên nền tảng chuyên nghiệp của bạn được nêu trong câu trả lời của bạn. Chỉ cần nhận ra tôi có thể dễ dàng sử dụng * .ui.qml từ QtCreator và sử dụng nó trực tiếp trong PyQt. Giải quyết thiết lập ban đầu của tôi về Python + QtQuick! – swdev

Các vấn đề liên quan