inspiration

vba의 기반인 vb6가 기술지원이 종료된게 언제일까? 비개발자, 마케터의 레벨에서 업무에서 친숙하게 사용하는 거의 유일한 프로그래밍 언어가 수십년전 기술이라는건 참 아쉽다.



take #1

USERFORM은 사용자가 입력하는 값을 받는 기능으로 사용하는데, 매크로 패널처럼 사용하고 싶다. 리본메뉴를 사용하는 편한방법이 있지만, 탭을 클릭하기가 너무 귀찮다. 인터넷을 몇시간 뒤적이다가, 아래처럼 패널을 완성했다.

myimg



테스트를 한번 해보자. 개인적으로 리본메뉴에 넣는것보다는 사용하기 편한듯하다.

myimg



MOUSE HOVER 기능을 찾아 넣었더니, 마우스 좌표를 찾을때마다 껌뻑이는 관계로 빼고 사용하는 것이 좋겠다.



take #2 디자인 수정

약간의 디자인 수정을 진행하였다. 확실히 공간을 덜 차지해서, 사용하기가 한결 수월해졌다. 어려웠던 부분은 어도비 일러스트레이터로 아이콘을 만들었는데, png 파일이 userform에서 지원이 되지 않아, 배경색을 거는데 상당한 애로사항이 있었다.
사이징은 40px * 40px로 만들었고, 나름 창의력을 발휘해서 아이콘을 만들었으나, 가끔 어떤 기능이었는지, 까먹는다. 여러번 사용하다보면 괜찮아지겠지..

myimg



지난번 글에 작성했던 것처럼 mouse hover 기능을 넣고 싶었는데, 역시 잘 되지는 않았다. 하나씩 늘려가봐야겠다.
현재까지의 기능 리스트는 다음과 같다. 넘버링은 코드를 구분하기 위함이므로 의미는 없다.

애초에 계획이나 기획없이, 짬짬이 아무 생각 없이 하다보니.. 고치는데, 시간이 꽤 지나게 된다.
수정은 찬찬히 진행할 계획



take #3 탭 기능 설정

MacroTool의 기능이 많아지면서, 탭을 좀 분리할 필요가 생겼다. 물론, 탭이 생기면, 클릭해야하는 귀찮음이 생기긴 하지만, 자주 사용하는 기능과 가끔 사용하는 기능을 잘 분리해낸다면, 좀 더 나을지 모른다.

다중페이지 컨트롤을 사용한다. 연속 탭 기능을 사용하고 싶었지만, 어떻게 사용하는지 잘 모르겠다.

myimg



기본으로 적용되는 탭을 없애고, label로 탭 버튼을 만들어줬다. label에서 text를 센터 정렬하기가 참 짜증나는데,
1x1px gif 이미지 picture로 넣고, 이미지를 센터 정렬해주면 된다.(참고 : stackoverflow)
해당 페이지의 버튼을 누르면 아이콘이 바뀌고 색이 변경되도록 했다. 최신의 UI 프로그램에 비해서는 참…불편하게 되어있지만, 그래도 이게 어딘가…

myimg


myimg



take #4 마우스 hover effect

지금 시점의 기술과 비교하여 뭔가를 해보자면 이가 빠지게 된 건 당연한것인지도 모르지만, 오늘은 object를 버튼으로 사용할때 마우스 hover효과를 내는 우회방법에 대해 시도해본다.

macrotoolkit을 만들었는데 마우스 클릭 느낌이 없으니 참 심심하다. 사용상 전혀 문제는 없는데, 어차피 내 만족에 하는거니까.. 사실, 아주 쉽게 될줄 알았는데 대단히 착각이었다. 오기가 생겨서 시도 했다는게 맞는 표현이다.

버튼을 button 대신 label 컴포넌트로 처리했는데, 아이콘 이미지를 넣기 위함이었다. 이로인해 클릭이나 hover 효과가 먹지 않았다. button 컴포넌트를 쓰면 해결될일인가? 그것도 그닥 아름답지 않으니 해결책인지 잘 모르겠다.
여튼 현재는 label 위에 이미지가 올라간 형태가 되어 있다.

click up, down 모션보다는 hover 효과를 내보기로한다.

img



mouse position을 detecting 해서 label 배경색을 바꾸고자 했으나, 아이콘이 png가 아닌 관계로 뭔가 지저분해진다.

→ 이미지를 default 와 hover 쌍으로 만든다.
→ 색을 다시 변경하려면 싹다 다시 뽑아야하니, 신중하게 골라야 한다.
→ 두 개 이미지를 겹쳐둔다.
→ 위에 hover를 visible False로 두고, 아래 default를 깐다.
→ 페이지 전체 백그라운드에 label 하나를 깔고, tranparent로 투명하게 만들어준다.
→ default에 mousemove 프로시저로, 오버시 hover의 visible을 True로 바꿔준다.
→ 마지막으로 투명 label에 mousemove 프로시저를 통해 hover의 visible을 다시 False로 바꿔준다.



나름 만족하는 결과이지만 위에 적은 것처럼 색을 바꾸려면 30개가 넘는 이미지를 전부 바꿔줘야한다는 점은 다소 아쉽다.
PNG 이미지를 사용할수 있다면 너무 간단한 일인데, 뭐하는 건가 싶다.

끝.