본문 바로가기
728x90
반응형

전체 글11

[C++][QT] QDialog Stylesheets not work QDialog베이스로 작업도중 내부에있는 컨트롤러의 style sheets를 설정해 주었는데 디자이너에서는 적용된 것 처럼 보이지만 막상 실행을하면 반영되지 않은 상태로 보여지는 경우가 있다. 나 같은 경우는 QDialog 위에 QTreeWidget의 스크롤바 디자인을 바꾸기위에 Style Sheets를 변경하였는데 곧바로 변경되어 적용된 디자이너와는 달리 실행해 보니 변경전 디자인으로 출력이 된 경우였다. 이게 Style Sheets의 설정 문제라고 생각할수 있지만 QWidget 위에 있는 QTreeWidget의 디자인은 제대로 변경되는것을 확인했다. 해결한 방법은 보통 ui 구성을할때 QFrame 하위로 컨트롤러들을 배치하는데 최상위 Frame의 Style Sheets에다가 스크롤 설정을 해주니 해결.. 2022. 10. 24.
[C++][QT] QLineEdit enterEvent 연결하기 QLineEdit는 일반적으로 사용자의 입력을 받는 컨트롤러다. 가장 흔하게 볼 수 있는 예시로 로그인 창을 예로 들 수 있다. 아이디를 입력하는 부분, 비밀번호를 입력하는 부분 다 QLineEdit라고 생각하면 된다. 아이디 비밀번호 작성후 Enter 키를 눌러 로그인 버튼을 클릭한 효과를 내는 것이 본문의 핵심. 생성자(){ connect(this->lineEdit_ID, SIGNAL(returnPressed()), this->pushButton_Login, SIGNAL(clicked())); connect(this->lineEdit_PassWord, SIGNAL(returnPressed()), this->pushButton_Login, SIGNAL(clicked())); } void QDashBoa.. 2022. 10. 21.
[C++][QT] QTableWidget editTriggers 수정 막기 QTableWidget 그리드에서 사용자가 Edit, 즉 수정하는 것을 막고 싶을 때가 있다. 방법 1. ***.ui 디자이너에서 QTableWidget을 선택 후 아래 속성에서 edit Triggers 항목을 찾는다. 기본적으로 DoubleClicked, EditKeyPressed, AnyKeyPressed 세 가지 옵션이 체크되어있다. 체크 일시 해당 동작을 했을 경우 Edit 상태로 그리드가 바뀐다. 그러므로 사용자가 수정사항을 못하게 기능을 막으려면 NoEditTriggers를 체크해주자 ( 체크하면 나머지 체크가 풀린다. ) 이러면 끝. 수정이 안된다. 방법 2. .cpp 코드상에서 위 방법에서 하던 트리거 세팅을 해주면 된다. this->tableWidget->setEditTriggers(QA.. 2022. 10. 20.
728x90
반응형