QT로 작업하고 있습니다. 슬롯이나 함수간에 값을 보존하는 방법이 있습니까? 간단히 말하자면, 내 양식에 툴바에 세 개의 버튼이 있고 라인 편집이 있다고 가정 해 봅시다. 변수에 "1"값을 설정하는 첫 번째 버튼과 변수에 "2"를 설정하는 두 번째 버튼이 필요합니다. 세 번째 버튼은이 변수를 사용하여 행 편집 내에서 표시합니다.QT에서 슬롯 또는 기능간에 값 유지
그래서 첫 번째 버튼을 누르고 세 번째 버튼을 누르면 행 수정에 숫자 "1"이 표시됩니다. 두 번째 버튼을 누른 다음 세 번째 버튼을 누르면 라인 편집에 숫자 "2"가 표시됩니다. 기본적으로 이것은 세 번째 버튼의 슬롯을 첫 번째 또는 두 번째 버튼 중 하나에 의해 설정된 변수를 찾은 다음 표시합니다. 이것이 완벽한 예가 아니라는 것을 알았지 만 개념을 설명한다고 생각합니다.
내가 그것을 할 생각하려고했습니다 방식의는 다음과 같습니다그들은 방법 나는 은선 편집을 만들고있을 때까지 값을 저장 ... 내가 학교에 가지고 간 VB 클래스에서 기억 나는 그것을 필요로한다. 슬프게도 이것은 복잡한 프로젝트에서 많은 수의 은선 편집을 의미합니다. 왝.
int main() 함수에서 전역 변수를 만들고 모든 변수에서 변수를 설정하십시오. 혼란스러워지고 무엇이든 액세스 할 수 있습니다. 그래서 그것은 어질러 질 수 있습니다.
데스크톱 응용 프로그램의 QT에 "ui"라는 클래스가있는 것으로 나타났습니다. getter와 setter로 내 자신의 클래스를 만들고 Ui에서 모든 것을 상속 받았다고 생각했습니다. 나는 이것이 작동 할 것이라고 믿지만 과잉이라고 생각합니다.
정보를 tmp 파일에 저장하고 읽습니다. 이것은 단기 변수가 필요할 때도 고통 스러울 수 있습니다.
이 작업을 수행하는 간단한 방법이 있습니까? 첫 번째 버튼 인 경우
connect(signalMapper, SIGNAL(mapped(int)), yourObj, SLOT(yourSlot(int)));
을 : 당신은 다음 슬롯에 signalMapper
의 mapped(int)
신호를 연결
signalMapper = new QSignalMapper(parent);
connect(firstButton, SIGNAL(clicked()), signalMapper, SLOT(map()));
connect(secondButton, SIGNAL(clicked()), signalMapper, SLOT(map()));
signalMapper->setMapping(firstButton, 1);
signalMapper->setMapping(firstButton, 2);
을 :