30/09/2018, 19:03

Tùy chỉnh GUI trong C++

Các bạn cho mình hỏi chút :

Để làm được cái GUI tùy chỉnh như cái máy tính trong hình thì nên dùng IDE, Framework, thư viện C++ nào nễ ăn nhất.

Cái này dùng cho Windows

Văn Dương viết 21:09 ngày 30/09/2018

Mấy cái này các bạn không quan tâm lắm nhỉ ?

Lê Hải Sơn viết 21:11 ngày 30/09/2018

Bạn có thể dùng thư viện MFC của MS hoặc sử dụng winform trên visual nhé.
Đây là cách hướng dẫn sử dụng GUI winform
http://hoanganhblog.net/tao-mot-project-c-windows-form-danh-cho-vs2012-tro-len/

Văn Dương viết 21:13 ngày 30/09/2018

À ý mình là “Custom GUI

Tức là như hình mình đưa, tất cả đều tùy biến mạnh.

  • Các button sẽ không còn là hình chữ nhật mà có thể là hình khác . Ví dụ elip hay hình tròn.
  • Các control và Form sẽ dạng blur (mờ) và có thể có bóng đổ như bóng nắng.
  • Label hoặc TextBox có ảnh như phản chiếu qua gương… (Không dùng photoshop vì nội dung có thể thay đổi).
X viết 21:15 ngày 30/09/2018

Thử tìm hiểu qua Devexpress

viết 21:04 ngày 30/09/2018

sao ko hỏi trực tiếp chủ nhân của cái máy tính củ chuối luôn Hay vô folder của nó xem các thư viện dll là gì, may ra có cơ sở nó viết bằng ngôn ngữ gì

Hai Doan viết 21:14 ngày 30/09/2018

trong window thi WPF nhe.

明玉 viết 21:12 ngày 30/09/2018

Theo kiến thức của mình thì Win Vista trở lên có thể làm thế này https://msdn.microsoft.com/en-gb/library/windows/desktop/bb688195(v=vs.85).aspx để được giao diện giống bộ Office, Windows Explorer.

Nhưng nếu muốn được như hình thì phải nghiên cứu cực sâu về Windows API, làm một cái borderless window, dùng 1 hoặc nhiều hình png để làm frame, dùng message để mô phỏng kéo thả cửa sổ… mình từng thử làm mà bỏ vì rắc rối quá , một số link:
http://www.codeproject.com/Articles/573/CreateRegionFromFile
http://code5s.com/windows/visual-c-sharp/tao_form_co_hinh_dang_bat_ky.html (C# nhưng mình tin là có thể làm tương tự bên C++ nếu rành rọt WinAPI)
https://www.youtube.com/watch?v=DIWOi0S1tcA (Anh này chưa mô phỏng kéo thả)
http://www.vcskicks.com/custom_shape_form_region.php

Và: http://www.codeproject.com/Articles/1822/Per-Pixel-Alpha-Blend-in-C (Cũng lại là C#, nhưng thực ra là dùng WinAPI) <= Bạn nên đọc cái này, nhưng các tính năng còn lại vốn có của một cửa sổ thì bạn phải tự mô phỏng hết bằng WinAPI Message, hoặc bằng cách nào đó bên C#.

Mà đừng dùng DevExpress: chạy chậm thí mồ, nó vốn dùng để quản lý dữ liệu thôi.

Văn Dương viết 21:14 ngày 30/09/2018

Devexpress là cho .NET mà bác.

Văn Dương viết 21:09 ngày 30/09/2018

Nó được làm từ WPF. Nhưng cái hình đó là để minh họa cái mong muốn của mình là làm nó với C++.

Mong muốn là Viết bằng C++

Mr. July viết 21:11 ngày 30/09/2018

DevExpress là cho .Net, nhưng C++ trong VS cũng có thể dùng đầy đủ các công cụ làm giao diện của .Net bạn nhé.
Đó là Visual Studio, còn có một IDE và thư viện khác là Qt nhé, đây là một trình đồ họa mạnh và nổi tiếng.
Còn việc tạo ra được chương trình như hình bạn đưa, đương nhiên ko phải dễ ăn vào là làm được, mà bạn phải tạo ra các User Control rồi thêm vào các IDE trên tương ứng, và bạn có thể làm bằng flash hoặc photoshop để dễ dàng tạo ra các nút hay bất cứ component nào có hình dạng, màu sắc, độ trong suốt… theo ý bạn muốn.

Văn Dương viết 21:07 ngày 30/09/2018

À mình quên nhắc đến là không phải C++.NET. Vì mình còn muốn đa nền tảng và hiệu năng cao nữa.

Mình thiên về dùng các thư viện để tạo control chứ không dùng photoshop hay các trình sửa ảnh. Vì mình muốn tạo bóng 1 textbox hoặc label, cái mà nội dung sẽ thay đổi và bóng đổ cũng phải thay đổi theo

明玉 viết 21:06 ngày 30/09/2018

Bổ sung luôn cho bạn cái này viết bằng C++ MFC:
http://www.codeproject.com/Articles/1036/Per-Pixel-Alpha-Blend
Và một cái Qt:
http://qt.developpez.com/tutoriels/braindeadbzh/customwindow/

minh tran viết 21:16 ngày 30/09/2018

Qt chắc dễ ăn nhất đó

viết 21:18 ngày 30/09/2018

chịu chơi thì xài thư viện game mà vẽ từng button rồi handle event các kiểu hay tự tạo hẳn 1 class Button nhỏ Còn chữ đổ bóng thì render ra 1 cái texture chính rồi flip vertical nó

Văn Dương viết 21:15 ngày 30/09/2018

Nghe chừng khó ăn các bác nhỉ
QT làm dài thế kia chắc dùng photoshop cho lẹ.

Bài liên quan
0