Microsoft MVP성태의 닷넷 이야기
C# Winform에서 TextBox없이 입력 받을 수 있나요? [링크 복사], [링크+제목 복사],
조회: 9015
글쓴 사람
갑자기C# (wuny511 at gmail.com)
홈페이지
첨부 파일
 

갑자기 C#을 개발하고 있습니다...
Winform에서 입력값을 받아야하는데 텍스트박스말고 텍스트 입력값을 받을 수 있나요?
콘솔창에서 입력 받는것처럼 윈폼 뒤에서 입력을 받을 수 있게 한다던가...
찾아봐도 텍스트박스에 입력 받는 것 밖에 안나오네요..








[최초 등록일: ]
[최종 수정일: 3/23/2021]


비밀번호

댓글 작성자
 



2021-03-23 11시38분
질문에 대해서 상상이 잘 안 가는데요. 일단, WinForm을 떠나서 어떤 응용 프로그램이든 텍스트 입력을 받아야 한다면 화면에 사용자가 입력한 텍스트가 출력이 되는 피드백은 있어야 할 것입니다. WinForm의 경우 그런 피드백을 TextBox 컨트롤이 제공하는 것이고요.

그리고 "콘솔창에서 입력받는 것처럼"은 그러한 피드백이 콘솔 창을 통해 이뤄집니다. 그런데 "윈폼 뒤에서 입력을 받을 수 있게"라는 것이 어떤 상황을 의미하는 것인지 잘 이해가 안 됩니다. 가령 윈폼 뒤에 콘솔 창을 띄워 놓는 것을 의미하는 건가요? 만약 그렇다면 사용자는 키보드를 눌러도 자신이 어떤 텍스트를 눌렀는지 알 수도 없는 상태입니다. (윈폼에 가려 보이지 않는 콘솔 창에 텍스트가 있으므로!)

문제를 좀 더 자세하게 설명해 주세요.
정성태
2021-03-23 08시46분
[갑자기C#] ## 바코드 스캐너로 키오스크 시스템 개발중입니다.(여기서 바코드 스캐너는 USB타입 바코드 스캐너 장비입니다) ##

목적은 윈폼 어디서든 사용자가 바코드를 스캔하면 MessageBox로 바코드값을 띄워줄려고합니다.
 바코드 스캐너는 바코드를 스캔시 바코드의 데이터(string)를 텍스로밖에 못 읽어옵니다. 저희가 키보드로 타이핑하는것과 같습니다.
그렇기 때문에 스캔시 읽어온 값을 받으려면 textBox처럼 입력을 받을 컨트롤이 필요하는데... 상황상 텍스트박스를 계속 띄워놓고 있을 수 는 없습니다.


결론은 윈폼 어디서든 바코드를 스캔하게 되면 바코드의 값을 MessageBox로 띄우는것 입니다!!
좋은 수가 생각이 나지를 않습니다..
[guest]
2021-03-23 09시04분
[dimohy] 윈도 메시지를 이용해 원하는 처리는 가능은 합니다만 다양한 제약사항이 발생해 결국에는 원하는 결과를 얻기가 매우 힘이 듭니다. 키입력방식으로 처리하셔서는 안되고요, 어느회사의 바코드리더기를 쓰시는지는 모르겠지만 키입렷말고 시리얼통신모드가 반드시 있습니다. 메뉴얼 보시면 메뉴얼의 바코드 스켄을 통해 어렵지않게 모드 전환이 됩니다.
이후에 시리얼 통신으로 받아오시면 됩니다.
[guest]
2021-03-23 10시54분
갑자기 제가 이상한 나라에 온 것 같군요. ^^;

질문을 보면, "목적은 윈폼 어디서든 사용자가 바코드를 스캔하면 MessageBox로 바코드값을 띄워줄려고합니다."에서, 그렇다면 바코드를 스캔했을 때 MessageBox 창을 하나 띄우면 될텐데요, 그건 또 아니라는 건가요?

그런데 "스캔시 읽어온 값을 받으려면 textBox처럼 입력을 받을 컨트롤이 필요하는데." 라는 설명도 이해가 안 됩니다. 바코드 스캐너로 읽어온 값(예를 들어 "1234"라고 가정하고)은 그 자체로 있을텐데 왜? textBox처럼 입력을 받을 컨트롤이 필요한 건가요? 이미 입력받아 메모리에 있는 "1234" 문자열을 왜 뭔가를 이용해 다시 입력을 받을 컨트롤이 필요하다는 건가요?

결론에서도, "윈폼 어디서든 바코드를 스캔하게 되면 바코드의 값을 MessageBox로 띄우는 것"이라고 했는데, 역시 말 그대로 그냥 바코드 스캐너가 읽은 "1234"를 MessageBox로 띄우면 됩니다. 혹시 ("1234"라는 문자열을 보여주는) MessageBox 창 띄우는 법을 질문하시는 건가요?
정성태
2021-03-24 12시08분
[갑자기C#] [dimohy] 님 감사합니다. 내일 메뉴얼 찾아서 시리얼통신모드에 대해 한번 알아봐야겠네요.

[정성태] 제가 갑작스레 C#개발을 맡게 돼서 잘 모르는 상태라.. 설명이 장황했나봅니다.

- 바코드 스캐너로 읽어온 값 "1234"가 메모리에 있다면 어떻게 꺼낼 수 있을까요?
   "혹시 ("1234"라는 문자열을 보여주는) MessageBox 창 띄우는 법을 질문하시는 건가요?"
        네 맞습니다.
늦은 시간까지 답변 감사합니다!
[guest]
2021-03-24 12시34분
그러니까, 결국 USB로 연결된 바코드 스캐너의 값을 어떻게 읽어내느냐가 질문인 거였군요.

만약 그렇다면 바코드 업체 측에서 제공하는 매뉴얼이나 별도의 SDK 라이브러리가 있을 것입니다. (@dimohy 님 의견대로, 시리얼 통신 모드를 제공한다면 업체 측에서 제공하는 매뉴얼에 어떤 파라메터로 통신 초기화를 하고 읽어내는 지에 대해 설명하는 내용이 있을 것입니다.)

혹은, 해당 바코드 머신이 HID 방식을 지원한다면 Windows 10에서 지원하는 BarcodeScanner 타입을 이용해 통신하는 것도 가능합니다.

BarcodeScanner Class
; https://docs.microsoft.com/en-us/uwp/api/windows.devices.pointofservice.barcodescanner

Barcode scanner sample
; https://docs.microsoft.com/en-us/samples/microsoft/windows-universal-samples/barcodescanner/

혹은 다음과 같은 개별 소스 코드를 참고할 수 도 있을 것입니다.

A USB HID Component for C#
; https://www.codeproject.com/Articles/18099/A-USB-HID-Component-for-C

개인적으로 바코드 장비를 한 번도 연동해 본 적이 없고, 가지고 있는 장비도 없어 뭐라고 더 설명할 수가 없군요. ^^;
정성태
2021-03-24 10시03분
[갑자기C#] 감사합니다 :)
[guest]

... 16  17  18  19  20  21  22  23  [24]  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
5319권대현4/10/20206254C++(UWP)Dll에서 C#(UWP)Dll 호출이 가능한가요? [1]
5318이승준4/9/20207125동영상 관련 업계 근황? 입니다. [1]
5317kskk...4/7/20209139OpenCV 이용 해상도 설정 질문 입니다.. [3]
5316윤현수4/7/20206363pipe 비동기방식 질문 [1]파일 다운로드1
53154/6/20207044dll파일 로드 원리? 부분에서 도움받고싶습니다. [3]
5314강성욱3/31/20208917메서드 내에서 await 2번 등장할 때의 이해 [11]파일 다운로드1
5313강성욱3/27/20206718await 2번 [1]
53121a2a...3/20/20206499Re raw data write 질문 관련 [1]파일 다운로드1
53111a2a...3/20/20207280Raw data write 관련 질문 [1]파일 다운로드1
5310아스파넬3/15/202073141초에 5회 함수호출 제한 관련 질문입니다. [1]
5309하태3/11/20209207안녕하십니까. c# Winform UI 질문드리겠습니다! [3]파일 다운로드1
5308질문3/9/20207996Window XP SP3 32bit 환경(Window Update 모두 완료)에서 .Net Framework 4.0.3 으로 빌드된 .dll 파일 gacutil.exe 등록 관련 문의 [5]
5306개발자3/9/20206867C#을 통해 인터넷 접속 가능한 이더넷을 선택할 수 있는지요? [1]
5305JaeS...3/9/20206547RAW파일 생성 질문드립니다 [8]파일 다운로드1
5303궁금하당2/27/20208862C#에서 C++ DLL읽기 (아래 글쓴이) [1]
5302궁금하당2/27/202010946C#에서 C++ DLL호출 ('PInvokeStackImbalance') [4]파일 다운로드1
5301질문합니...2/27/20206415소켓 대량 데이터 디자인 문의 [1]
5300nals...2/27/20207053vs2013에서 BinaryFormatter Serialize 후 vs2015에서 Deserialize시 예외 발생 [3]파일 다운로드1
5298질문2/26/20208425.lic 파일에 대해 질문 있습니다. [9]
5297임한승2/26/20205999vs2013에서 BinaryFormatter Serialize 후 vs2015에서 Deserialize시 예외 발생 건 [1]파일 다운로드1
5295나그네2/25/20207394클라이언트 PC 정보 조회관련.. [2]
5294닷넷초보ㅠ2/25/20207391윈폼으로 socket통신프로그램 만든후 release로 디버깅한 실행파일을 다른컴퓨터에서 실행할때 반응이없어요 [1]
5293탱코2/21/20207294검색을 하고 싶은데 어떻게 검색을 해야 할 지 모르겠습니다. [1]
5292아부리2/19/20207186XingApiNet 관련 질문 [3]
5291지현명2/15/20207934JsonConvert.Serialize 하고 Deserialize 할때 간헐적으로 한글 깨짐 현상 문의 합니다. [3]
5290베도빈2/15/20207287직접 제작한 사용자 정의 콘트롤 DLL, 실행파일에 포함시켜 배포할 수 있을까요? [1]
... 16  17  18  19  20  21  22  23  [24]  25  26  27  28  29  30  ...