我的问题很简单:
我们的C#应用程序具有一个带有菜单的MainForm,以及与菜单项相关的几个键盘快捷键。
现在,我们也需要从某些子窗体中触发菜单项。但是由于在子窗体之一处于活动状态时MainForm处于非活动状态,因此快捷方式不起作用。
是否有一种简单的方法可以将所有键盘事件从子窗体传播到“所有者”窗体?还是只是一般的另一种形式?
嗯,我们不能使用一些低级的Windows东西,因为我们也需要在Mono / Linux上运行该应用程序。
编辑:我有确切的问题是使用另一种形式的相同快捷方式触发菜单项。当然,如果添加了新项目的菜单更改,则无需更新表单中的代码。
firstButton是Custom类型的UIButton.我以编程方式将三个放在一个表的每个单元格中,因此:
[firstButton setImage:markImage forState:UIControlStateNormal];
[firstButton setContentMode:UIViewContentModeScaleAspectFit];
[cell.contentView addSubview:firstButton];
Run Code Online (Sandbox Code Playgroud)
在其他地方,我告诉它clipToBounds.我得到的是图像中心方块的裁剪,而不是它的纵横比例渲染.我已经尝试了很多方法,包括在firstButton.imageView上设置mode属性,这似乎也不起作用.
任何人都可以推荐一些开始完成项目教程,真正强调良好的设计原则和最佳实践.我正在寻找证明并强调任何或所有这些的东西:
我目前正在观看敏捷秋季系列,其中展示了许多这些原则.我想找到更多这些教程/演示.
我需要使用批处理文件在GAC中注册程序集.有没有办法找到安装位置GacUtil.exe或有没有办法在没有GacUtil的情况下注册组件?
如果我有一个viewController设置如下:
@interface MapViewController : UIViewController <MKMapViewDelegate, CLLocationManagerDelegate> {
CLLocationManager *locationManager;
}
-(void)viewDidLoad {
[super viewDidLoad];
locationManager = [[CLLocationManager alloc] init];
}
Run Code Online (Sandbox Code Playgroud)
在内存管理方面,我应该向viewDidUnload和dealloc添加发布吗?
-(void)viewDidUnload {
[locationManager release];
locationManager = nil;
[super viewDidUnload];
}
-(void)dealloc {
[locationManager release];
[super dealloc];
}
Run Code Online (Sandbox Code Playgroud)
欢呼加里
编辑:
根据Deans的评论,[super dealloc]降到了最低点.
我正在使用XMLSerializer和一个标有属性的类生成一些XML.此XML将发送到REST Web服务.
它生成以下XML:
<?xml version="1.0" encoding="utf-8"?>
<person xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<first-name>API</first-name>
<last-name>TestPersonDeleteMe</last-name>
<title>Delete me</title>
</person>
Run Code Online (Sandbox Code Playgroud)
一切都会好的,除了我正在使用的Web服务不理解架构的东西并抛出500错误.
有没有办法阻止XmlSerializer添加'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"'到person标签?
我有一段很长的XML要解析.我想删除除子类代码和城市之外的所有内容.所以我留下了类似下面的例子.
TEST SUBCLASS |迈阿密
<?xml version="1.0" standalone="no"?>
<web-export>
<run-date>06/01/2010
<pub-code>TEST
<ad-type>TEST
<cat-code>Real Estate</cat-code>
<class-code>TEST</class-code>
<subclass-code>TEST SUBCLASS</subclass-code>
<placement-description></placement-description>
<position-description>Town House</position-description>
<subclass3-code></subclass3-code>
<subclass4-code></subclass4-code>
<ad-number>0000284708-01</ad-number>
<start-date>05/28/2010</start-date>
<end-date>06/09/2010</end-date>
<line-count>6</line-count>
<run-count>13</run-count>
<customer-type>Private Party</customer-type>
<account-number>100099237</account-number>
<account-name>DOE, JOHN</account-name>
<addr-1>207 CLARENCE STREET</addr-1>
<addr-2> </addr-2>
<city>MIAMI</city>
<state>FL</state>
<postal-code>02910</postal-code>
<country>USA</country>
<phone-number>4014612880</phone-number>
<fax-number></fax-number>
<url-addr> </url-addr>
<email-addr>noemail@ttest.com</email-addr>
<pay-flag>N</pay-flag>
<ad-description>DEANESTATES2BEDS2BATHSAPPLIANCED</ad-description>
<order-source>Import</order-source>
<order-status>Live</order-status>
<payor-acct>100099237</payor-acct>
<agency-flag>N</agency-flag>
<rate-note></rate-note>
<ad-content> MIAMI/Dean Estates: 2
beds, 2 baths. Applianced. Central air. Carpets. Laundry. 2 decks. Pool. Parking. Close to everything.No smoking. No utilities. $1275 mo. 401-578-1501. </ad-content> …Run Code Online (Sandbox Code Playgroud) 我是Web服务的新手,但对Delphi来说并不陌生.
我正在使用"WSDL Importer"向导将WSDL文件导入Delphi 2010.WSDL文件包含一些Delphi完全忽略的"attributeGroup"标签,这可能是一个bug,虽然我还没有在Quality Central上找到这个问题的条目,只在这里和这里的论坛中提到.
我的问题有几个部分:
更新
根据我的经验和这个问题的答案,我决定使用C#控制台应用程序进行包装路由,该应用程序使用JSON输入数据并输出JSON应答数据.Delphi应用程序驱动C#应用程序.整个事物的SOAP部分现在毫不费力,并且在C#.NET中"正常工作",其余功能由Delphi很好地处理.我会向其他有类似问题的人推荐这条路线.我确实尝试将C#SOAP程序集导出为COM库,并从Delphi连接到它,但它变得非常复杂,因为我的特定应用程序中的SOAP规范很大而且有点复杂.
我正在阅读MySQL中的交易,我不确定我是否正确掌握了一些特定的东西,我想确定我理解正确,所以这里就是这样.我知道一个事务应该做什么,我只是不确定我是否理解语句语义.
所以,我的问题是,有什么不对,(并且,如果是这种情况,有什么问题),以下内容:
默认情况下,MySQL中启用自动提交模式.
现在,SET autocommit=0;将开始一个事务,SET autocommit=1;将隐式提交.这是可能的COMMIT;,以及ROLLBACK;,在这两者的情况下,自动提交仍设置为0之后(和一个新的隐式启动事务).
START TRANSACTION;将基本上SET autocommit=0;直到COMMIT;或ROLLBACK;发生.
换句话说,START TRANSACTION;并且SET autocommit=0;是等价的,除了START TRANSACTION;相当于隐含地添加一个SET autocommit=0;after COMMIT;或者ROLLBACK;
如果是这种情况,我不明白http://dev.mysql.com/doc/refman/5.5/en/set-transaction.html#isolevel_serializable-看到有一个隔离级别意味着有一个事务,这意味着自动提交应该是关闭的?
如果在开始交易和设置自动提交之间存在另一个差异(除了上述的差异之外),它是什么?
我正在尝试在java.util.logging中使用默认记录器时抑制日期行durinng日志记录的输出.例如,这是一个典型的输出:
Jun 1, 2010 10:18:12 AM gamma.utility.application info
INFO: ping: db-time=2010-06-01 10:18:12.0, local-time=20100601t101812, duration=180000
Jun 1, 2010 10:21:12 AM gamma.utility.application info
INFO: ping: db-time=2010-06-01 10:21:12.0, local-time=20100601t102112, duration=180000
我想摆脱Jun 1, 2010...线条,它们只是混乱了我的日志输出.我怎样才能做到这一点?