Microsoft MVP성태의 닷넷 이야기
프로그램 실행시 중복일 때 버튼 색깔 원래대로 돌리기 [링크 복사], [링크+제목 복사],
조회: 16849
글쓴 사람
heyhey (jeanie1oo at naver.com)
홈페이지
첨부 파일
 

다름이 아니라
WindowsFormApplication1, WindowsFormApplication2 2개의 실행파일이 있습니다.

WindowsFormApplication1에서 버튼이 3개(Button1,Button2,Button3)가 있다고 가정하면
버튼 2개 중 아무거나 클릭시 WindowsFormApplication2.exe 가 실행됩니다.
그런데 중복으로 실행을 안시키려 Mutex로 막았습니다.
문제는 색깔입니다.
프로그램 실행시 버튼 색깔을 바꾸어주었는데

Private Sub button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click, Button3.Click

        Select Case sender.name
            Case "Button1"
                Me.Button1.BackColor = Color.Yellow
                Me.Button1.Enabled = False
            Case "Button2"
                Me.Button2.BackColor = Color.Yellow
                Me.Button2.Enabled = False
            Case "Button3"
                Me.Button3.BackColor = Color.Yellow
                Me.Button3.Enabled = False
        End Select

바꾸었고 중복 실행시 Msgbox("이미 실행중입니다") 라고 표현했습니다.
Button1을 눌러서 WindowsFormApplication2.exe를 실행시키고
Button1의 색깔이 노란색으로 바뀌었으며
다시 WindowsFormApplication1.exe에서 Button2를 눌렀을 시
노란색으로 바뀌며
"이미 실행중입니다" 메시지가 뜨면서
다시 원래의 색깔(White)로 바꾸고 싶은데 이것을 어떻게 처리해야하나요?

제 생각으로는
Me.sender.name.click = Color.White 로 하고 싶은데 이 문장이 성립이 안되서 질문 드립니다.








[최초 등록일: ]
[최종 수정일: 8/14/2017]


비밀번호

댓글 작성자
 



2017-08-14 02시40분
마지막 생각이 비슷한데, 왜 안되는지 좀 더 고민해 보시면 답을 찾을 수 있을 것입니다. (비주얼 스튜디오에서 디버그 모드로 실행한 후 sender에 대해 Watch 창으로 조사를 해보면 답이 보일 것입니다.)
정성태

NoWriterDateCnt.TitleFile(s)