0
이것은 내 견과를 몰고 있습니다, 나는 약 일주일 동안 모든 것을 시도했습니다. 희망 솔 좀 도와 줄 수 있습니다. 새 모달 팝업 색상 선택기를 만들려고합니다. 그러나 StopModal()
은 새 창을 계속 작성합니다.monomac에서 NSWindow를 초기화하십시오.
class ColorPicker:NSWindow{
void ColorPicker(IntPtr Value):base(Value){
}
void ColorPicker(Color StartColor){
//Set up window here.
}
public void ShowModal(NSWindow NewParent){
this.ParentWindow = NewParent;
NSApplication.SharedApplication.RunModalForWindow(this);
return DialogResult;
}
}
I는 다음과 같이 작성합니다 :
ColorPicker CP=new ColorPicker(Color.Red);
그런 다음이
CP.ShowDialog(MyMainWindow);
난에 버튼이 보여
나는 새로운NSWindow
, 프로그램 좀 같이 만들어 닫고 통화하는 양식
,
NSApplication.SharedApplication.StopModal();
그러나 어떤 이유로이 호출하여 두 번째 창을 생성합니다
void ColorPicker(IntPtr Value):base(Value){
}
가 그럼 난 누출 오류를 얻을 곧 충돌 : 당신이 유지되지 않는 경우가 발생 될 수
NativeRelease ERROR]: type: ColorPicker handle: 137041376 count: 2 gchandle: 0
objc[350]: Object 0x103070 of class NSConcreteMapTable autoreleased with no pool in place - just leaking - break on objc_autoreleaseNoPool() to debug
소리가 들립니다. 나는 창문을 닫은 후 처분하고 있는데, 몇 시간 동안 창문에있는 창문으로 들어간 메시지를 보면서 물건을 망가 뜨리는 것을 보았습니다. 어떻게 해결할 수 있을까요? –
내가 찾은 유일한 방법은 창을 처리하지 않는 것입니다. 나는 오류없이 달리 할 수있는 방법을 찾지 못했습니다. – Curtis
그게 내가하기로 결심했습니다. 동일한 창을 보관하고 계속 사용하십시오. 당신의 도움을 주셔서 감사합니다. –