我添加了一个简单的Core Data iPhone应用程序的部分列表.
我按照这个问题来创建它 - 如何使用第一个字符作为节名,但我的列表中还包含以AZ以外的字符开头的项目,特别是在瑞典使用的Å,Ä和Ö.
现在的问题是,当表视图显示部分列表时,最后三个字符被绘制错误.见下图
看来我现在最好的选择是让这些物品在"Z"下排序
if ([letter isEqual:@"Å"] ||
[letter isEqual:@"Ä"] ||
[letter isEqual:@"Ö"])
letter = @"Z";
Run Code Online (Sandbox Code Playgroud)
有人想过这个吗?
当我在它的时候......'Å','Ä'和'Ö'应按顺序排序,但由Core Data分类为'Ä','Å'和'Ö' NSSortDescriptor.我试图将选择器设置为localizedCaseInsensitiveCompare:但是会out of order section name 'Ä. Objects must be sorted by section name'出错.看到了吗?
li = [0, 1, 2, 3]
running = True
while running:
for elem in li:
thiselem = elem
nextelem = li[li.index(elem)+1]
Run Code Online (Sandbox Code Playgroud)
当它到达最后一个元素时,IndexError会引发一个(就像任何列表,元组,字典或迭代的字符串一样).我实际上希望在那一点nextelem上等于li[0].我对此非常麻烦的解决方案是
while running:
for elem in li:
thiselem = elem
nextelem = li[li.index(elem)-len(li)+1] # negative index
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法呢?
我想知道是否可以在Qt应用程序中使用win32键盘钩子函数(SetWindowsHookEx,SetWindowsHookEx).
如果可能,请在Qt中使用SetWindowsHookEx,SetWindowsHookEx函数提供示例代码.
// 2010年2月18日更新//
我还没弄明白如何在QT中做到这一点.
但作为一种解决方法,我使用vc ++ express edition创建了一个win32 dll,并将我的钩子命令放在dll函数中.我使用QLibrary类从Qt调用该函数
/* hearder file code*/
QLibrary *myLib;
typedef HHOOK (*MyPrototype)(HINSTANCE);
/* source file code */
myLib = new QLibrary( "ekhook.dll" );
MyPrototype myFunction;
myFunction = (MyPrototype) myLib->resolve( "Init" );
Run Code Online (Sandbox Code Playgroud)
init()是被调用的ekhook.dll中的函数
为了避免在开发过程中反复访问SOAP服务器,我正在尝试缓存结果,这样我就可以运行其余的代码,而无需每次都查询服务器.
使用下面的代码,我得到一个PicklingError: Can't pickle <class suds.sudsobject.AdvertiserSearchResponse at 0x03424060>: it's not found as suds.sudsobject.AdvertiserSearchResponse当我尝试挑选肥皂水果的结果.我想这是因为这些类是动态创建的.
import pickle
from suds.client import Client
client = Client(...)
result = client.service.search(...)
file = open('test_pickle.dat', 'wb')
pickle.dump(result, file, -1)
file.close()
Run Code Online (Sandbox Code Playgroud)
如果我删除-1协议版本 pickle.dump(result, file, -1),我会得到一个不同的错误:
TypeError: a class that defines __slots__ without defining __getstate__ cannot be pickled
Run Code Online (Sandbox Code Playgroud)
酸洗是正确的吗?我可以让它运作吗?有没有更好的办法?
在我的下一个项目中,我想为C++中已有的代码实现GUI.我的计划是将C++部分包装在DLL中并在C#中实现GUI.我的问题是我不知道如何实现从非托管DLL到manged C#代码的回调.我已经在C#中做了一些开发,但是托管和非托管代码之间的接口对我来说是新的.任何人都可以给我一些提示或阅读提示或一个简单的例子来开始吗?不幸的是,我找不到任何有用的东西.
我试图在Rails中创建一个简单的搜索表单,但我想我错过了一些东西.
我有一个命名的搜索路线:
map.search ":first_name/:last_name", :controller => "home", :action => "search"
Run Code Online (Sandbox Code Playgroud)
我正在尝试在我的搜索表单中使用它:
<% form_tag(search_path, :method => 'get') do %>
<%= text_field_tag(:first_name) %>
<%= text_field_tag(:last_name) %>
<%= submit_tag("Search") %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
但是当我加载搜索表单时,我得到一个ActionController :: RoutingError:
search_url无法从{:action =>"search",:controller =>"home"}生成 - 您可能有不明确的路线,或者您可能需要为此路线提供其他参数.content_url具有以下必需参数:[:first_name,:last_name] - 它们是否都满足?
我错过了什么?我认为我的表单中定义的字段会自动与我的路由参数相关联.: - /
更新:
我知道search_path是在现在显示表单之前生成的,因此无法更新.后见之明显而易见!
我改变了路线:
map.search 'search', :controller => "home", :action => "search"
map.name ':first_name/:last_name', :controller => "home", :action => "name"
Run Code Online (Sandbox Code Playgroud)
现在这个search动作就是:
def search
redirect_to name_path(params)
end
Run Code Online (Sandbox Code Playgroud)
这一切都有效!这里的主要目标是通过搜索结果从名为route 的名称获取该URL .多谢你们!
是否有一种简单的方法可以将一种日期格式转换为PHP中的另一种日期格式?
我有这个:
$old_date = date('y-m-d-h-i-s'); // works
$middle = strtotime($old_date); // returns bool(false)
$new_date = date('Y-m-d H:i:s', $middle); // returns 1970-01-01 00:00:00
Run Code Online (Sandbox Code Playgroud)
但我当然希望它能够返回当前的日期,而不是破解那天.我究竟做错了什么?
我正在研究用C#和WPF编写的.NET应用程序.在此应用程序中,我们将向Active Directory服务器验证用户身份.最后,我们可能也想支持其他LDAP实现,所以如果我可以构建它而不是特定于ActiveDirectory的那将是一个优势.
开始使用它的最佳方法是什么?我应该检查一下有什么好的资源吗?我听说.NET中有一个用于处理与Active Directory通信的库 - 或者是否有一个通用的LDAP库?任何建议表示赞赏!
注意:我使用的是.NET 3.5.
我需要这个我们程序中所有已知的"选择文件"功能,所以我可以加载文件.
这个东西叫做什么,它的代码在哪里?
float pi = 3.14;
float (^piSquare)(void) = ^(void){ return pi * pi; };
float (^piSquare2)(void) = ^(void){ return pi * pi; };
[piSquare isEqualTo: piSquare2]; // -> want it to behave like -isEqualToString...
Run Code Online (Sandbox Code Playgroud)