WxWidget / WxPerl,更多WxApp实例,EVENT处理

时间:2016-01-05 08:26:36

标签: events event-handling wxwidgets wxperl

我正在尝试创建一个脚本,它创建多个简单的窗口(它继承自WxApp)。窗口只包含一个按钮和处理器,用于单击EVENT。

当存在多个窗口时,问题是处理点击事件。如果只存在一个窗口实例,则会正确检测到事件。看来,事件总是在最后创建的窗口中正确运行。我无法弄清楚,哪里可能有问题...在此示例中,在第一个创建的窗口中单击按钮后,似乎事件在第二个窗口中被捕获。它打印" 2"控制台,而不是" 1"。

$(document).ready(function() {
    alert('f');
    $('#rdTown').change(function() {
        var globalVar
        jQuery.getJSON('@Url.Action("FillCity")', {
            id: $(this).attr('value')
        }, function(data) {
            $('#rdCity').empty();
            jQuery.each(data, function(i) {
                option = $('<option></option>').attr("value", data[i].City_id).text(data[i].Name_City);
                $('#rdCity').append(option);
                window.globalVar = (data[0].id)
                // alert(globalVar)                    
            });
        });
    });
});

1 个答案:

答案 0 :(得分:0)

您似乎对wxAppwxFrame之间的差异感到非常困惑。第一个代表整个应用程序,并且只能有一个(无论如何,在非病理情况下)。要创建多个顶级窗口,只需创建多个wxFrames,但您的代码不会这样做,它实际上会创建多个wxApp实例。

不要这样做,创建一个wxApp,然后根据需要创建任意数量的窗口。