Hỏi về thay đổi màu border trong QLineEdit?

Cho mình hỏi làm cách nào để thay đổi màu boder trong QLineEdit mà không làm thay đổi kích thước của nó ạ, câu lệnh thay đổi màu của mình như sau:

qlineedit->setStyleSheet( qlineedit->styleSheet().append(
QString( "border-width: 1px; border-style: solid; border-color: red;" ) ) );

Sau khi chạy câu lệnh này thì cái khung nó nhỏ lại cứ như là thuộc tính mới nó đè lên tất cả thuộc tính đang có nên nó thay đổi cả size luôn?
Các bạn có syntax nào khác không?

anh @tranhuanltv có thể giúp em được không?

Disclaim: tớ chưa bao giờ sử dụng Qt.

Đầu tiên, tớ có thấy trong stylesheet của cậu có đề cập border-width. Tớ nghĩ cậu nên kỳ vọng border-width của frame sẽ bị giảm đi khi làm vậy chứ?
Nếu cậu chỉ muốn thay đổi màu, tớ nghĩ cậu nên bỏ property đó xem.
Ngoài ra, chỉ là reminder của tớ, Qt có 1 trang ví dụ về việc này, trong đó hướng dẫn khá chi tiết. Cậu thử xem sao:
https://doc.qt.io/qt-5/stylesheet-examples.html

Hope it helps!

5 Likes

mình cũng xem doc rồi, việc bỏ border-width thì boder cũng disable luôn, như vậy rất có thể là không cài đặt thêm được mà phải chỉnh 1 lần là chỉnh hết, mình nghĩ như vậy rất khó custom chỉ thay đổi một vài property thôi, css của ông Qt này khó nhỉ

1 Like

Test trước style khi design nếu thấy ổn thì copy đoạn style đó chứ.

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?