Qt 5.2를 사용하고 있으며 QLineEdit
편집 불가능 하게 만들고 싶습니다 . 이것의 문제는 그것이 그렇게 보이지 않는다는 것입니다. 사용할 때 setReadOnly(true)
흰색 배경으로 유지되고 여전히 편집 가능한 것처럼 보입니다.
비활성화하면 회색으로 바뀌고 텍스트도 밝은 회색으로 바뀝니다. 문제는 비활성화 된 상태에서 텍스트를 복사 할 수 없다는 것입니다.
그래서 어떻게 QLineEdit
적절하게 편집 불가능하게 만들고 그렇게 보이게 만들 수 있습니까? Windows에서 이러한 컨트롤은 일반적으로 회색이지만 텍스트는 검은 색으로 유지됩니다. 물론 수동으로 스타일을 설정할 수 있지만 이는 하드 코딩되어 다른 플랫폼에서 잘못 보일 수 있음을 의미합니다.
라인 편집을 읽기 전용으로 만든 후 배경 및 텍스트 색상을 원하는대로 설정할 수 있습니다.
ui->lineEdit->setReadOnly(true);
QPalette *palette = new QPalette();
palette->setColor(QPalette::Base,Qt::gray);
palette->setColor(QPalette::Text,Qt::darkGray);
ui->lineEdit->setPalette(*palette);
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다