我需要在iPhone应用程序中显示文本,例如书籍的显示方式,例如:
我该怎么做呢?我找到了UITextView和UITextField以及UIScrollView对象,但我无法弄清楚如何正确使用它们......有什么建议吗?
我希望这是有道理的...
快速健全性检查:是否可以使用仿函数对窗口进行子类化?我遇到了想要在win proc中获得一些数据的情况,但是GWLP_USERDATA已经被使用了.仿函数似乎是一个很好的选择,但我无法让它工作.
这是基础知识:
class MyWinProc { // Win Proc Functor
public:
MyWinProc(ExternalClass* obj, HWND window) :
obj(obj), window(window) {
oldWinProc = SubclassWindow(window, this); // Apply Subclass
}
virtual ~MyWinProc() {
SubclassWindow(window, oldWinProc); // Remove Subclass
}
LRESULT CALLBACK operator()(HWND, UINT, WPARAM, LPARAM) {
switch( uMsg ) {
case WM_MOUSEMOVE: {
obj->onMouseMove(/*etc*/);
break;
}
}
return CallWindowProc(oldWinProc, hWnd, uMsg, wParam, lParam);
}
private:
ExternalClass* obj;
HWND window;
WNDPROC oldWinProc;
};
Run Code Online (Sandbox Code Playgroud)
好像很好,但当我在消息泵中点击DispatchMessage()时,我"访问违规写入位置0x00000000",显然不是一个好兆头.删除对上述代码的调用,生活再次开心.:(所以这甚至可能,或者我完全以错误的方式去做?
我已经使用makecert生成的基本自签名证书(使用关于该主题的许多在线教程中的一些)运行我的WCF Web服务,但发现在生成makecert似乎无法处理的证书时我们需要某些功能.因此,我正在尝试使用OpenSSL创建我的证书,使用我们自己的CA(也使用OpenSSL生成)对其进行签名.我似乎正在创建和注册证书,但当我尝试查询Web服务时,我得到以下内容:
证书'[Cert Details]'必须有私钥.该进程必须具有私钥的访问权限.
尽管我可能尝试,我似乎无法让系统识别出我认为的私钥(也许我完全错了,我应该完全看看另一个文件......)任何人都可以提供一些sage建议到哪里我可能会出错?
我正在生成这样的证书:
# Generate key and certificate request
openssl req -new -newkey rsa:1024 -nodes -keyout MyCompany.key -out MyCompany.csr
# Generate certificate from certificate request
openssl ca -batch -in MyCompany.csr -out MyCompany.cert
Run Code Online (Sandbox Code Playgroud)
然后,我可以使用机器证书存储区注册"Mycompany.cert"(在这种情况下,服务器和客户机都在localhost上运行),但MyCompany.key(我假设是私钥,是吗?)将不会导入,总是引用一种未知的文件格式.通过带有证书管理单元的"mmc"实用程序进行注册.
在我的客户端和服务器的Web.Config文件中,然后将以前(工作)的证书名称换成我的新证书的名称:
<!-- Client Web.config -->
<clientCredentials>
<serviceCertificate>
<authentication certificateValidationMode="PeerOrChainTrust"/>
</serviceCertificate>
<clientCertificate findValue="MyCompany" storeLocation="CurrentUser" storeName="TrustedPeople" x509FindType="FindBySubjectName" />
</clientCredentials>
<!-- Server Web.config -->
<serviceCredentials>
<clientCertificate>
<authentication certificateValidationMode="PeerOrChainTrust"/>
</clientCertificate>
<serviceCertificate findValue="MyCompany" storeLocation="CurrentUser" storeName="TrustedPeople" x509FindType="FindBySubjectName" />
</serviceCredentials>
Run Code Online (Sandbox Code Playgroud)
当然,这会产生我之前列出的错误.我知道它正在找到证书,因为它在错误中显示的细节都是正确的,但我显然遗漏了一些东西.那么我还需要做些什么来让WCF使用我的OpenSSL证书?
如果我的问题看起来很明显,或者我遗漏了一些关键信息,我很抱歉,但我对证书/ SSL场景很新,而且我已经拥有的很多东西都是我在黑暗中摸索的.我非常感谢能够启发我的人!
我在应用程序中使用表单字体大小正确缩放控件时遇到了一些麻烦.问题是表单动态添加控件以响应用户操作.当字体大小初始设置时,表单上的任何控件都可以完美缩放,但之后添加的控件会出现问题.它们的字体适当缩放,但它们的位置和大小不适合.要查看此操作,请使用空表单创建一个简单项目并粘贴以下代码:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
SplitContainer split = new SplitContainer();
split.Dock = DockStyle.Fill;
this.Controls.Add(split);
// Group 1
split.Panel1.Controls.Add(NewGroup());
this.Font = new Font(this.Font.FontFamily, this.Font.Size * 2);
// Group 2
split.Panel2.Controls.Add(NewGroup());
split.SplitterDistance = this.Width / 2;
}
public GroupBox NewGroup()
{
GroupBox groupBox = new GroupBox();
groupBox.Size = new System.Drawing.Size(132, 92);
groupBox.Text = "groupBox";
groupBox.SuspendLayout();
Label label = new Label();
label.AutoSize = true;
label.Location = new Point(6, 16);
label.Text = "label";
groupBox.Controls.Add(label);
Button button = …Run Code Online (Sandbox Code Playgroud) 我有一个HTML块,我想用它作为GWT小部件的基础,但我不太确定最好的方法.举个例子,我的HTML块看起来像这样:
<div class="my-widget">
<div class="header">
<span class="title">Title Text</span>
</div>
<div class="body">
<span class="content">Content Text</span>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
现在,我当然可以将其作为静态字符串粘贴到HTML小部件中,但在这种情况下,我需要能够动态设置"标题"和"内容"元素的文本.这会使静态文本选项丧失(或至少使其变得非常困难).
在这种情况下首先要想到的是手动构建GWT中的元素并保存对我需要更改的元素的引用,如下所示:
DivElement container = document.createDivElement();
setStyleName(container, "my-widget");
setElement(container);
DivElement header = document.createDivElement();
setStyleName(header, "header");
container.appendChild(header);
// Hold onto this element for later manipulation
DivElement title = document.createDivElement();
setStyleName(title, "title");
header.appendChild(title);
Run Code Online (Sandbox Code Playgroud)
但是除了最简单的布局之外,这很快就会变得无法管理(我的不是.)
我想要的是能够以静态文本形式发送HTML,然后执行某种选择器(如jQuery)来查询我想要操作的元素.我知道GWT-Query但是我无法让它在没有错误的情况下运行,而且在我的生命中看起来有点太早,以至于我很乐意将它集成到专业产品中.
我也知道Google的UiBinder,听起来和我想要的完全一样.据我所知,问题在于功能仅在GWT 2.0中可用,GWT 2.0仍处于候选发布状态,因此无法使用.
所以,考虑到所有这些(抱歉这个长期的问题!)你对如何最好地实现这样的事情有任何建议吗?
简单的问题:如何将任意args列表传递给python可调用?
假设我想从命令行调用一个函数,如下所示:
my_script.py foo hello world
Run Code Online (Sandbox Code Playgroud)
使用以下脚本:
import myfuncs
f = getattr(myfuncs, sys.args[1])
if f and callable(f):
# This is the bit I don't know. I effectively want f(sys.args[2:])
Run Code Online (Sandbox Code Playgroud)
我确信有办法做到这一点,但我必须忽略它.
我经常看到旋转齿轮的OpenGL示例(我认为最初是由SGI完成的)但是今天我只能找到C和Ruby实现,有人能指出我的c ++实现吗?
我正在努力将重点放在GWT对话框上.我正在尝试组建一个非常友好的键盘界面,所以当我的对话框出现时(一个简单的是/否/取消事件)我需要让键盘焦点自动切换到"是"按钮.然而,尽管我付出了最大的努力,但似乎无法将重点放在需要编程的地方.我现在的代码如下所示:
public abstract class ConfirmDialog extends DialogBox {
final Button yesBtn, noBtn, cancelBtn;
public ConfirmDialog(String title, String prompt) {
super(false);
setTitle(title);
setText(title);
setGlassEnabled(true); // For great modal-ness!
DockLayoutPanel buttonPanel = new DockLayoutPanel(Unit.PX);
buttonPanel.setHeight("25px");
buttonPanel.addEast(cancelBtn, 75);
buttonPanel.addEast(noBtn, 60);
buttonPanel.addEast(yesBtn, 60);
FlowPanel dialogPanel = new FlowPanel();
dialogPanel.add(new HTML(prompt));
dialogPanel.add(buttonPanel);
setWidget(dialogPanel);
}
@Override
public void show() {
super.show();
center();
yesBtn.setFocus(true); // Why does this hate me???
}
}
Run Code Online (Sandbox Code Playgroud)
省略:许多按钮点击事件处理不会影响初始显示.
无论如何,正如您从代码中看到的那样,目的是一旦显示对话框,"是"按钮就会获得焦点.我已经尝试了它,如代码示例中所示,我已将焦点放在DeferredCommand中,我已尝试挂钩其他事件......但最好的焦点有点随机.
我想这可能只是一个时间问题(也许我在将它添加到DOM之前尝试将重点放在按钮上?)但是如果是这样的话我不知道应该注意什么时候让我知道我可以有效地给按钮重点.任何提示?
谢谢!