PyQt | QT Designer Widgets
Các thành phần widgets cơ bản:
* Nhắc lại 2 thành phần đã học:
- Label : Thành phần sử dụng để hiển thị văn bản, hình ảnh, icon,.. Người dùng chỉ xem không thể chỉnh sửa. (Label trong giao diện mẫu là Username và Password)
Các thuộc tính cơ bản của label:
Object name: 1 label được tạo ra tương ứng với 1 đối tượng trong python, vì thế cần được đặt tên để tương tác, sử dụng các thuộc tính và phương thức.
Geometry: điều chỉnh kích thước và vị trí của label xuất hiện trên cửa sổ (Tương ứng hàm setGeometry đã giới thiệu).
Text: là thuộc tính cho phép nhập văn bản hiển thị trên label
Font: Định dạng văn bản xuất hiện trên label bao gồm font chữ, kích thước, màu sắc, độ đậm nhạt, …
Pixmap: để chèn hình ảnh đại diện cho label, đi kèm Pixmap là scaledContents để đảm bảo hình ảnh sẽ không bị cắt mà điều chỉnh kích thước theo label.
- Line Edit : Thành phần sử dụng để cung cấp hộp thoại cho phép người dùng nhập văn bản
Các thuộc tính cơ bản của Line Edit:
Object name: tương tự như label, object name của line edit dùng để đặt tên cho đối tượng.
Geometry: điều chỉnh kích thước và vị trí xuất hiện trên cửa sổ.
placeholderText: thuộc tính để tạo một văn bản ngắn xuất hiện trong ô nhập liệu như một gợi ý cho người dùng về mục đích hoặc dữ liệu cần nhập vào ô đó. Placeholder thường xuất hiện mờ đi hoặc màu xám nhạt để phân biệt với nội dung thực tế mà người dùng có thể nhập.
Cursor: Hình dạng của con trỏ chuột khi rê vào thành phần giao diện này. Đối với Line Edit thường là dấu gạch đứng để ra dấu hiệu cho người dùng nhập văn bản.
echoMode: là một thuộc tính quan trọng được sử dụng để xác định cách mà dữ liệu đầu vào của người dùng sẽ được hiển thị trong ô nhập liệu. Bao gồm:
Normal: giá trị mặc định để hiển thị văn bản bình thường.
NoEcho: Không có dữ liệu hiển thị trên ô nhập liệu.
Password: Các ký tự mà người dùng nhập sẽ được hiển thị như dấu sao hoặc các ký tự ẩn khác.
PasswordEchoOnEdit: ký tự sẽ được hiển thị trong một khoảng thời gian ngắn trước khi được thay thế bằng các dấu sao hoặc các ký tự ẩn khác
- Push Button : Thành phần sử dụng để tạo nút nhấn.
Các thuộc tính cơ bản của Push Button:
Object name: tương tự như các thành phần khác, dùng để đặt tên đối tượng.
Geometry: điều chỉnh kích thước và vị trí xuất hiện trên cửa sổ.
Text: là thuộc tính cho phép nhập văn bản hiển thị trên button
Cursor: Hình dạng của con trỏ chuột khi rê vào thành phần giao diện này. Đối với Push Button thường hình bàn tay để ra dấu hiệu cho người dùng nhấn vào.
Icon: để chèn ký hiệu, biểu tượng vào button
* Các thành phần giao diện khác:
- Radio button : là một phần tử giao diện người dùng (UI) thường được sử dụng để cho phép người dùng chọn một lựa chọn từ một danh sách các tùy chọn.
Các thuộc tính cơ bản của Radio button:
Text: Thuộc tính này cho phép đặt văn bản hoặc nhãn hiển thị bên cạnh radio button để mô tả lựa chọn.
Checkable: Thuộc tính này xác định xem radio button có được phép chọn hay không.
Enabled: Thuộc tính này xác định xem radio button có hoạt động hay không.
AutoExclusive: Thuộc tính này xác định xem radio button có tham gia vào nhóm tự động không. Nếu thuộc tính được chọn, các radio button trong cùng một parent widget sẽ tự động loại trừ lẫn nhau (chỉ một radio button trong nhóm có thể được chọn).
- Check box : tương tự Radio button, nhưng check box cho phép người dùng chọn nhiều lựa chọn trong danh danh sách.
Các thuộc tính cơ bản của Checkbox:
Text: Thuộc tính này cho phép đặt văn bản hoặc nhãn hiển thị bên cạnh checkbox để mô tả lựa chọn.
Checkable: Thuộc tính này xác định xem checkbox có được phép chọn hay không.
Enabled: Thuộc tính này xác định xem checkbox có hoạt động hay không.
- Date Edit : được sử dụng để cho phép người dùng chọn hoặc nhập ngày tháng.
Các thuộc tính cơ bản của Date Edit:
Display Format: Bạn có thể đặt định dạng để xác định cách ngày tháng sẽ được hiển thị cho người dùng. Ví dụ: dd/MM/yyyy hoặc MM/dd/yyyy.
Minimum Date và Maximum Date: cho phép thiết lập giới hạn cho ngày tháng mà người dùng có thể chọn bằng cách đặt các giá trị tối thiểu và tối đa cho Date Edit.
- Combo Box : Là một phần tử giao diện người dùng được sử dụng để cho phép người dùng chọn một giá trị từ một danh sách các tùy chọn. Thao tác để thêm lựa chọn bao gồm:
Click chuột phải vào đối tượng combo box
Chọn Edit Item
Mỗi lựa chọn nằm ở 1 hàng
Các thuộc tính cơ bản của ComboBox:
Current Text: Đây là văn bản của tùy chọn đang được chọn hiện tại trong ComboBox.
Current Index: Đây là chỉ số của tùy chọn đang được chọn hiện tại trong ComboBox.
Max Count: Đặt số lượng tối đa các tùy chọn mà ComboBox có thể chứa.
- Calendar Widget: là một phần tử giao diện người dùng được sử dụng để hiển thị một lịch ngày tháng và cho phép người dùng chọn ngày tháng cụ thể.
Các thuộc tính cơ bản của Calendar Widget:
Selected Date: Thuộc tính này cho biết ngày nào đã được chọn trên lịch.
Minimum Date và Maximum Date: Đặt giới hạn cho ngày mà người dùng có thể chọn bằng cách đặt các giá trị ngày tối thiểu và tối đa.
- Progress Bar : là một phần tử giao diện người dùng được sử dụng để hiển thị tiến trình hoặc tiến độ của một tác vụ nào đó.
Các thuộc tính cơ bản của Progress Bar:
Value: Đây là giá trị hiện tại của thanh tiến trình, thường được đặt để thể hiện mức độ hoàn thành của một tác vụ. Giá trị nằm trong khoảng từ 0 đến giá trị tối đa (thường là 100).
Minimum và Maximum: Đây là giá trị tối thiểu và tối đa mà Value có thể đạt được.
Text Visible: Thuộc tính này xác định văn bản mô tả tiến trình.
- Vertical Slider: là một phần tử giao diện người dùng được sử dụng để cho phép người dùng chọn một giá trị từ một phạm vi giới hạn bằng cách di chuyển thanh trượt lên hoặc xuống.
Các thuộc tính cơ bản của Vertical Slider:
Minimum và Maximum: Xác định giới hạn dưới và trên cho giá trị của thanh trượt.
Value: Đây là giá trị hiện tại của thanh trượt, thường là một số nằm trong khoảng giới hạn bởi thuộc tính Minimum và Maximum.
Single Step và Page Step: Single Step là giá trị tăng/giảm khi người dùng di chuyển thanh trượt bằng phím mũi tên, trong khi Page Step là giá trị tương tự nhưng cho một lần nhấp chuột lớn hơn, thường được sử dụng khi có một khoảng giá trị lớn để chọn.
- Horizontal Slider : tương tự Vertical nhưng cho phép người dùng di chuyển giá trị trượt theo chiều ngang.