Microsoft MVP성태의 닷넷 이야기
C#과 python 연동 질문 [링크 복사], [링크+제목 복사],
조회: 152
글쓴 사람
GM B (welcometome80 at gmail.com)
홈페이지
첨부 파일
 

안녕하세요?

일전 주인장님의

C# - IronPython을 이용한 파이썬 소스코드 연동
; https://www.sysnet.pe.kr/2/0/13603

글을 보고 문의드립니다.

이미 ironpython이나 python.net은 기본적으로 모두 사용해보았습니다만..

질문 : 혹시 PYTHON의 matplotlib나 tkinter같이 GUI로 display되는 output을 C# winform/wpf로 display 시킬 수 있는 방법은 없는지요?

상세질문내용 : Current C# wpf/winform 프로젝트에서 뭔가 button event로 python GUI S/W 코드를 mainwindows/mainform으로 embedded display식으로 run하면 최고 best 방법~
(Current C# wpf/winform 프로젝트에서 뭔가 button event로 python GUI S/W 코드를 new windows로 display하는 것은 이미 알고 있음.)

입니다. 특별히 다른 예제 source파일은 필요없어도 이해가 되실 것 같아 생략합니다.








[최초 등록일: ]
[최종 수정일: 4/30/2025]


비밀번호

댓글 작성자
 



2025-04-30 02시36분
저도 해 본 것은 아니지만 어차피 in-process로 python이 실행되고, WinForm의 경우 HWND 핸들 기반인데다 (윈도우에 포팅된 버전이라면) matplotlib/tkinter도 HWND가 내장돼 있을 것이므로 그것만 잘 맞춰주면 C#의 Window에 자식 윈도우로 추가하는 것은 가능하지 않을까 싶습니다. (WPF라면 어쩔 수 없이 WindowsFormsHost를 경유해야 할 것입니다.)

특히나 matplotlib의 경우 특정 운영체제를 위한 코드를 노출시키지는 않을 듯한데, 그런 경우라면 패키지 내부를 분석해서 윈도우 생성과 관련한 코드를 가로채기해야 하지 않을까 싶습니다. 혹은, PLplot같은 라이브러리처럼 matplotlib 측에서 이미지를 윈도우가 아닌 메모리로 출력해 주는 기능이 있다면 그걸 받아와 사용하는 것도 방법일 수 있습니다. (참고: C# - PLplot 출력을 파일이 아닌 Window 화면으로 변경 - "https://www.sysnet.pe.kr/2/0/11935")

해보고 답변을 드려야 하는데... ^^;
정성태

1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5912guest4/25/202316689[참고 - 초보용] Sqlite 디비는 double이 없고 Real이 대신합니다 [3]
5911guest4/24/202311471Form1.cs와 외부 class.cs와 통신 (static async method포함) [4]파일 다운로드1
5910guest4/24/202310957Async 메서드와 try~catch [1]
5909guest4/22/202311940Visual Studio 구매 시(1인 개발자) [4]
5908guest4/22/202311630텅빈 원그리기 [5]
5907민성4/21/202311137안녕하세요 서버 백업 문제에 대해서 [2]
5906guest4/21/202311517Dispatcher 서비스 구현 질문 [1]
5905guest4/20/202312511tabControl의 tabPage가 여러 개일 때 순서를 바꾸기가 까다롭네요 [5]
5904guest4/18/202312434[신규자료첨부] DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [4]파일 다운로드1
5903guest4/18/202311201fileSystemWatcher 이벤트 관련 질문입니다 [2]
5902guest4/17/202312282c#으로 USB 관련 질문 [2]
5901guest4/17/202310596내솔루션 판매 시 1.0.0.0 폴더와 Sqlite 배포 [5]
5900guest4/17/202312642DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [2]파일 다운로드1
5899guest4/17/202311325Dictionary와 Linq [4]
5898차가워4/17/202311334CNTK 교육 문의 [1]
5897guest4/17/202311082Socket스레드와 UI thread [4]
5896HAN4/16/202310960c언어 return 에 대해 궁금한게 있어요. [1]파일 다운로드1
5895guest4/15/202311273Drag and Drop - 모든 컨트롤 [2]
5894송부장4/14/202312789[질문] Visual Studio 2022에서 '도구 상자 항목 선택'의 'COM 구성 요소' 탭에서 ActiveX 목록이 보이지 않습니다. [3]파일 다운로드2
5893감사합니...4/14/202310869오라클 OLEDB방식 접속 후 SELECT 'TEST' TEST_VALUE FROM DUAL의 값이 이상합니다. [1]
5892한무4/14/202310822C# 으로 백그라운드에서 워드를 실행하여 매크로 실행이 가능 할까요? [2]
5891리세4/14/202311613안녕하세요.C# 서버프로그램에서의 Mysql 쿼리문제(다중쿼리 실행)에 대해 문의드립니다. [2]
5890guest4/14/202312530C# 프리랜서로 돈 벌려면 성태님 책 마스터하면 되나요? [6]
5889전예찬4/14/202310867C# 파일 복사 관련 질문 드립니다. [3]
5888정경구4/12/202310979C# 첫 환경 세팅과 관련해서 [4]
5887HAN4/12/202311057안녕하세요 파이썬도 공유 가능 할까요? [1]
1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...