Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于Cocoa的Web浏览器中的地址栏_Cocoa_Webkit_Webview - Fatal编程技术网

基于Cocoa的Web浏览器中的地址栏

基于Cocoa的Web浏览器中的地址栏,cocoa,webkit,webview,Cocoa,Webkit,Webview,我正在使用Cocoa编写一个最小的web浏览器。我一直在努力创建一个地址栏,基本上是一个NSComboBox,下拉列表中包含以前访问过的URL 主要问题是WebView对象的backForwardList属性会在不可预知的时间更新。例如,如果我从下拉列表中选择一个url(数据源为backForwardList),然后启动一个加载请求,当下拉列表更新所选项目时,backForwardList已更改,selectedItem的索引已过期,因此显示不正确的地址。处理此类计时问题的好方法是什么?在弹出窗

我正在使用Cocoa编写一个最小的web浏览器。我一直在努力创建一个地址栏,基本上是一个NSComboBox,下拉列表中包含以前访问过的URL


主要问题是WebView对象的backForwardList属性会在不可预知的时间更新。例如,如果我从下拉列表中选择一个url(数据源为backForwardList),然后启动一个加载请求,当下拉列表更新所选项目时,backForwardList已更改,selectedItem的索引已过期,因此显示不正确的地址。处理此类计时问题的好方法是什么?

在弹出窗口打开之前复制列表。在组合框退出first responder之前,请仅使用此副本。

感谢您提供有关first responder的提示。实际上解决的不仅仅是这个问题。