Tôi đã tạo 2 hàng nút nhấn, mỗi hàng nằm trong QHBoxLayout. Kích thước/chiều rộng tối thiểu của QPushButton được tạo từ mã
tôi có thể tạo các nút trong các mã:
static const char* buttonText = "23456789TJQKA";
for (int ii = 0; buttonText[ii]; ii++)
{
QPushButton* pushButton = new QPushButton(this);
pushButton->setText(QString(buttonText[ii]));
ui->horizontalLayout_1->addWidget(pushButton);
}
for (int ii = 0; buttonText[ii]; ii++)
{
QPushButton* pushButton = new QPushButton(this);
pushButton->setText(QString(buttonText[ii]));
ui->horizontalLayout_2->addWidget(pushButton);
}
Vấn đề là họ không thể co lại (khi người dùng thay đổi kích thước hộp thoại) vượt quá kích thước đó, mặc dù văn bản của họ sẽ phù hợp trong một chiều rộng nhỏ hơn nhiều. Nếu tôi tạo các nút thủ công trong trình chỉnh sửa tài nguyên thay vì trong mã, chúng có thể có chiều rộng nhỏ hơn.
Hãy thử với QToolButton. –
Đã hoạt động! Cảm ơn. Nếu bạn đăng câu trả lời này, tôi có thể chọn nó làm câu trả lời được chấp nhận. Nhưng tại sao thay đổi kích thước công việc cho QToolButton nhưng không cho QPushButton? – sashoalm
QToolButton và QPushButton có các kiểu mặc định khác nhau. Ví dụ, một QPushButton có chiều rộng tối thiểu khoảng 6em. Có nghĩa là, chiều rộng của 6 ký tự (trong phông chữ mà bạn đang sử dụng). QToolButton, bởi vì nó thường được sử dụng cho hình ảnh, hoặc "...", những thứ như vậy, có chiều rộng tối thiểu nhỏ hơn nhiều - như 2em. QPushButton, cũng thường có nhiều lề trái/phải hơn. Nếu bạn bắt đầu chơi với phong cách trang tính này là một cái gì đó bạn có thể tinker với. – Liz