AIXLOGIS 로고AIXLOGIS
개발 일지

(Python_backup tool) 종료 버튼을 눌렀는데 앱이 멈춘 것처럼 보이는 문제 해결하기

#Python#UX#데스크톱앱

개요

프로그램을 종료할 때 네트워크 연결을 정리하는 처리가 몇 초간 화면을 멈춘 것처럼 보이게 만드는 문제와, 빌드된 실행 파일에서 창의 일부 섹션이 잘려 보이는 문제, 두 가지 사용성 이슈를 함께 정리했습니다.

문제 상황

1. 창 크기 부족

일반 스크립트 실행에서는 문제가 없었지만, 실행 파일로 빌드한 뒤 실행하면 하단의 특정 섹션이 창 밖으로 잘려 나가 보이지 않는 경우가 있었습니다. 창의 기본/최소 크기를 넉넉하게 다시 잡아 해결했습니다.

2. 종료 시 "멈춘 것처럼 보이는" 현상

프로그램 종료 시 네트워크 연결을 해제하는 시스템 명령이 완료될 때까지 메인 화면이 응답하지 않는 상태로 몇 초간 유지되는 현상이 있었습니다. 실제로는 정상적으로 처리 중이었지만, 사용자 입장에서는 "프로그램이 멈췄다"고 오해하기 쉬운 상황이었습니다.

해결 방법

연결 해제 로직을 호출하기 직전에, 별도의 팝업 창을 새로 띄우는 대신 기존에 있던 하단 상태 표시줄과 창 제목을 활용해서 "지금 종료 처리 중"이라는 사실을 먼저 화면에 반영하도록 했습니다.

종료 버튼 클릭:
    창 제목 → "종료 중..."
    상태 표시줄 → "연결 해제 중입니다. 잠시만 기다려 주세요." (강조색)
    화면 즉시 갱신
    → 그 다음에 실제 연결 해제 처리 실행

새로운 UI 요소를 추가하지 않고 기존 상태 표시줄을 재활용한 덕분에, 구현 부담 없이 자연스러운 피드백을 제공할 수 있었습니다.

회고

  • 처리 시간이 몇 초라도 걸리는 작업 앞에는 반드시 "지금 무언가 진행 중"이라는 신호를 먼저 보여줘야 한다는 걸 다시 확인했습니다. 실제 로직은 그대로 두고 화면 갱신 순서만 바꾼 것만으로도 체감 안정성이 크게 달라졌습니다.
  • 배포용 실행 파일은 개발 환경과 화면 표시가 미묘하게 다를 수 있어서, 실제 빌드 결과물로 화면 레이아웃을 한 번 더 점검하는 절차가 필요하다는 것도 다시 느꼈습니다.
#Python#UX#데스크톱앱

이슈와 관련된 다른 인사이트

DEV
개발 일지

(Python_backup tool)파일 탐색기에 안전장치 더하기 — 충돌 감지와 휴지통 방식 삭제

DEV
개발 일지

(Python_backup tool) 자동 동기화 기능에 사용자 제어권 추가하기

DEV
개발 일지

(Python_backup tool) PyInstaller로 패키징한 데스크톱 앱, 재실행하면 설정이 초기화되는 문제 해결기