Có cách nào tôi có thể ẩn đường viền của ô đã chọn (hoặc làm cho đường viền màu trắng) trong qtablewidget .. Theo mặc định đường viền có đường chấm chấm được hiển thị ... Bạn có thể giúp tôi ...Ẩn đường viền của ô đã chọn trong qtablewidget trong pyqt?
Trả lời
Dường như đường viền chấm xung quanh ô được chọn mà bạn đang cố ẩn là hình chữ nhật lấy nét. Bất kỳ ô đã cho nào cũng có thể tập trung và không được chọn cùng một lúc và ngược lại. Nếu bạn muốn đường viền này không được vẽ, hãy sử dụng một mục đại biểu. Ở đó bạn có thể xóa kiểu dáng State_HasFocus khỏi trạng thái của mục trước khi vẽ nó. Xin vui lòng, xem một ví dụ dưới đây về cách để làm điều này, đó là C++, cho tôi biết nếu bạn có vấn đề chuyển đổi nó để trăn
// custom item delegate class
class NoFocusDelegate : public QStyledItemDelegate
{
protected:
void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const;
};
void NoFocusDelegate::paint(QPainter* painter, const QStyleOptionViewItem & option, const QModelIndex &index) const
{
QStyleOptionViewItem itemOption(option);
if (itemOption.state & QStyle::State_HasFocus)
itemOption.state = itemOption.state^QStyle::State_HasFocus;
QStyledItemDelegate::paint(painter, itemOption, index);
}
...
// set the item delegate to your table widget
ui->tableView->setItemDelegate(new NoFocusDelegate());
hy vọng điều này giúp, coi
Tôi thích làm:
ui->tableWidget->setFocusPolicy(Qt::NoFocus);
Bạn cũng có thể thay đổi chính sách lấy nét bằng cách sử dụng tab thiết kế.
.. nhưng bạn mất tính năng điều hướng bằng bàn phím bằng cách làm như vậy – swdev
- 1. Đặt đường viền của ô QTableWidget thành 0px
- 2. Qt: đường viền ẩn cho tab đã chọn trong QTabBar
- 3. Xóa đường viền khỏi ô đã chọn trong một hàng trong dữ liệu
- 4. xóa các đường viền ô trong jtable
- 5. Đường viền không được viền đồng nhất trong ô bảng
- 6. BẢNG không có đường viền ô dọc
- 7. Đường viền cho các ô trong GridLayout, TableLayout hoặc GridView?
- 8. Đường viền quanh các ô mẫu
- 9. Tài liệu WPF: Nhận đường viền của ô Bảng phải
- 10. Xóa đường viền quanh ô Matlab
- 11. Xóa tất cả đường viền ô và hàng DataGrid
- 12. Đặt đường viền trong UICollectionView
- 13. Cách ẩn nền bên dưới đường viền
- 14. Thay đổi màu lựa chọn của QTableWidget
- 15. ẩn đường viền nếu div nằm trên
- 16. Xóa đường viền chấm chấm mà không đặt NoFocus trong Windows PyQt
- 17. Thay đổi màu đường viền trong các ô UITableView của iPhone (không được nhóm)
- 18. ITextSharp: Đặt màu viền ô của bảng
- 19. Đặt đường viền trong bảng trong HTML
- 20. Đường viền CHỌN trong Chrome hiển thị 3D
- 21. xóa lưới jtable (đường viền ô) hoàn toàn
- 22. Kết hợp đường viền trên cùng, đường viền phải, đường viền trái, đường viền dưới cùng trong CSS
- 23. truy xuất văn bản trong một ô cụ thể trong QTableWidget?
- 24. Chỉ có thể chọn một mục có thể chọn trong QTableWidget
- 25. Đường viền bên trong CSS?
- 26. giá trị tổng của các ô đã chọn trong chuỗi ký tự
- 27. Matplotlib: ô đường viền với tiện ích con trượt
- 28. Đường viền trong suốt của JTextField trong Swing
- 29. Cách ẩn thẻ đã chọn?
- 30. Làm thế nào để giới hạn lựa chọn trong QTableWidget
Cảm ơn bạn đã trả lời .. Tôi đã đạt được điều tương tự với setFocusPolicy (QtCore.Qt.NoFocus) vì tôi đã sử dụng qtablewidget .. Tôi không quen thuộc với các đại biểu mặc dù .. Tôi không thể upvote câu trả lời này. Nó nói rằng các điểm danh tiếng phải lớn hơn 15 .. – Jeba