我有创建后台线程的方法来做一些动作.在这个后台线程中我创建了对象.但是在运行时创建时这个对象给了我一个例外:
调用线程必须是STA,因为许多UI组件都需要这个.
我知道我必须使用Dispatcher来反映UI的内容.但在这种情况下,我只是创建一个对象,而不是用UI迭代.这是我的代码:
public void SomeMethod()
{
BackgroundWorker worker = new BackgroundWorker();
worker.DoWork += new DoWorkEventHandler(Background_Method);
worker.RunWorkerAsync();
}
void Background_Method(object sender, DoWorkEventArgs e)
{
TreeView tv = new TreeView();
}
Run Code Online (Sandbox Code Playgroud)
如何在后台线程中创建对象?
我使用WPF应用程序
这不是我期望看到的结果:
class A(dict):
def __init__(self, *args, **kwargs):
self['args'] = args
self['kwargs'] = kwargs
class B(A):
def __init__(self, *args, **kwargs):
super(B, self).__init__(args, kwargs)
print 'Instance A:', A('monkey', banana=True)
#Instance A: {'args': ('monkey',), 'kwargs': {'banana': True}}
print 'Instance B:', B('monkey', banana=True)
#Instance B: {'args': (('monkey',), {'banana': True}), 'kwargs': {}}
Run Code Online (Sandbox Code Playgroud)
我只是想让类A和B设置一致的值.我不确定为什么要将kwargs插入到args中,但我要假设我要么__init__()从子类中调用错误,要么我正在尝试做一些你不能做的事情.
有小费吗?
我能够插入,过滤和订购记录,但不能使用简单的计数!! 我想知道是否有办法在表中得到总行数?有没有办法在查询中使用GROUP BY?
我有一个简单的PHP脚本,用于前端SQLite数据库.这没什么花哨或复杂的.但是我注意到从数据库中的记录中看到,我在带有双引号的表单字段中输入的任何内容都在表单处理中遇到,就好像我用反斜杠转义引号一样.所以当我输入标题的记录时:
英国轻型多用途车10HP"Tilly"
数据库中显示的是:
英国轻型多功能车10HP"蒂莉"
我不知道这些来自哪里,更糟糕的是,即使使用以下preg_replace似乎也不会删除它们:
$name = preg_replace('/\\"/', '"', $_REQUEST['kits_name']);
如果我转出$name,它仍然带有不需要的\字符.
我一直在尝试使用canvas标签和Javascript.我创建了一个页面,从Twitter公共时间轴上获取推文并将其动画显示.它的工作原理是在动画的背景中使用canvas元素.动画完成后,它会在顶部创建一个div元素,文本相同.我这样做是为了使推文文本可以选择,链接是可点击的.
现在,在Safari,Chrome甚至Opera中,画布文本和div文本看起来几乎完全相同.然而在Firefox中,文本的大小不同,足以使它在转换为div时"跳跃".
有谁知道如何让Firefox使用CSS在canvas元素和div上渲染文本相同?或者这是与引擎的渲染不一致.
如果你想看看我的意思,我已将网页放在我的网站上.
现在代码:
我用于渲染div的CSS包含:
line-height: 21px; font-weight: 100; font-family: Georgia, "New Century Schoolbook", "Nimbus Roman No9 L", serif; font-size: 20px;
Run Code Online (Sandbox Code Playgroud)
在我正在使用的画布上渲染:
this.context.font = this.scale + 'px Georgia';
this.context.fillStyle = "white";
this.context.strokeStyle = 'white';
this.context.fillText(this.text, 0, 0);
this.context.strokeText(this.text, 0, 0);
Run Code Online (Sandbox Code Playgroud)
其中this.scale是一个动画缩放因子,精确到20px.因此,回顾一下,我使用相同的字体并以相同的px大小结束,但Firefox在Canvas和CSS之间呈现不同的文本.
(编辑)这是一个截图示例: alt text http://danforys.com/temp/firefox-behaviour.png
第一行是使用画布动画的文本,第二行是生成的div.
如果有人可以为我提供使用哪个组件的解决方案,以便我可以在我的Android应用程序中显示相当漂亮的日历,我将不得不这样做.
我一直在浏览过去两天的解决方案,但遗憾的是找不到解决方案.由于这是一个非常基本的要求,我相信会有一个完美的解决方案.
请帮助提出建议,意见和解决方案.
在这方面的任何帮助都非常感谢.
期待,问候,Rony
我有一个SQL表集,看起来像这样
create table foo (
id int primary key asc,
data datatype );
create table bar (
id int primary key asc,
fk_foo int,
foreign key(foo_int) references foo(id));
Run Code Online (Sandbox Code Playgroud)
现在,我想插入一个记录集.
insert into table foo (data) values (stuff);
Run Code Online (Sandbox Code Playgroud)
但是等一下 - 要让Bar全部修补好,我需要来自Foo的PK.我知道这是一个已解决的问题.
解决方案是什么?
我有这样的WCF服务:
[ServiceContract( SessionMode=SessionMode.Required)]
public interface IService
{
[OperationContract(IsInitiating = true, IsTerminating = false)]
void login(string id);
[OperationContract(IsInitiating = false, IsTerminating = false)]
string getdata();
}
public class Service : IService
{
public void login(string hashedid)
{
if (username != "someusername" || password != "somepassword")
{
// can not get data
}
else
{
// can get data
}
}
public string getdata()
{
return "these are data";
}
}
Run Code Online (Sandbox Code Playgroud)
如何编写方法登录并创建客户端应用程序?谢谢.
我是Eclipse和Android的新手,但对Java有些熟悉.话虽如此,我尝试使用最新的Eclipse(Galieo)和2.1 Android SDK从开发者网站上关注"Hello Android"教程,我在运行Snow Leopard(OS X 10.6)的Macintosh上.我有一个默认的虚拟设备(虽然我的目标实际上是我自己的HTC Incredible手机,它有snapdragon处理器,当然还有智能手机的最新装备).
在我RUN>RUN选择"Android应用程序" 之前,一切似乎都没问题.我的电脑旋转了一段时间,然后我看到两个错误.我已经粘贴了Eclipse的输出:
[2010-05-04 01:53:46 - HelloAndroid] ------------------------------
[2010-05-04 01:53:46 - HelloAndroid] Android Launch!
[2010-05-04 01:53:46 - HelloAndroid] adb is running normally.
[2010-05-04 01:53:46 - HelloAndroid] Performing com.example.helloandroid.HelloAndroid activity launch
[2010-05-04 01:53:46 - HelloAndroid] Automatic Target Mode: launching new emulator with compatible AVD 'myAVD'
[2010-05-04 01:53:46 - HelloAndroid] Launching a new emulator with Virtual Device 'myAVD'
[2010-05-04 01:53:58 - HelloAndroid] New emulator found: emulator-5554
[2010-05-04 01:53:58 - HelloAndroid] Waiting for HOME …Run Code Online (Sandbox Code Playgroud) 如果我将日志级别设置为DEBUG,则将记录/打印所有日志级别> = DEBUG的消息.但是我可以将日志级别设置为仅DEBUG,以便打印仅具有DEBUG的日志级别的消息.或者可以给出一个范围,比如打印日志级别> = DEBUG但是<ERROR?