これは私を狂わせています、私は約1週間すべてを試しました。ある種の靴底がお役に立てば幸いです。新しいモーダルポップアップカラーピッカーを作成しようとしています。ただし、StopModal()
新しいウィンドウを作成し続けます。
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;
}
}
私はこのように作成します:
ColorPicker CP=new ColorPicker(Color.Red);
それからそれを見せてください
CP.ShowDialog(MyMainWindow);
フォームを閉じて電話をかけるボタンがあります
NSApplication.SharedApplication.StopModal();
しかし、何らかの理由で、これは次の呼び出しによって2番目のウィンドウを作成します。
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