有没有地方可以找到多个分配来实现设计模式(以及解决方案?)
我的想法是以适当的方式开始.我想用Java实现它们.目前我只需要基本的设计模式,而不是J2EE模式.
我实际上正在寻找使用大多数设计模式的完整应用程序.(单个作业中的所有设计模式)
我刚刚使用SDL编写了一些简单的程序,这让我回想起我编写的一些Java GUI.
在简单的SDL程序中,我有一个循环来检查任何事件(按键,鼠标点击等......)并对它们做出反应.基本上它是对输入的轮询.
在Java中,您将侦听器附加到GUI对象,并在发生特定事件时触发侦听器.
我的问题是,Java是否只是在后台为我们处理这个轮询循环,并解决了点击哪个GUI控件以便它可以触发正确的监听器,或者是否有更复杂的事情发生?
我知道Qt有一个与Java类似的事件系统,你可以使用插槽将处理程序连接到GUI控件.这也只是处理所有轮询并确定为我们点击了哪个控件?或者,是否有更复杂的事情发生?
UPDATE
也许我对这个问题不够清楚.我真的想知道一个事件如何桥接OS层 - 应用层边界.应用程序是否轮询操作系统层并将事件信息提取到应用程序中?或者操作系统是否有某种方法可以中断/通知应用程序发生了事件,并将事件信息推送到应用程序.
第三个解决方案已经向我建议应用程序调用阻塞本机函数,如:
Event e = someNativeFunction(); // blocks until someNativeFunction() returns an event
Run Code Online (Sandbox Code Playgroud) 我想在c#中读取cmd的连续输出流.我知道我可以重定向标准输出流并读取它.以下是代码:
System.Diagnostics.ProcessStartInfo pi= new System.Diagnostics.ProcessStartInfo(ProgramPATH,Params);
pi.RedirectStandardOutput = true;
pi.UseShellExecute = false;
pi.CreateNoWindow = true;
System.Diagnostics.Process proc= new System.Diagnostics.Process();
proc.StartInfo = pi;
proc.Start();
string result = proc.StandardOutput.ReadToEnd();
Run Code Online (Sandbox Code Playgroud)
但这会立即产生整个输出.如果我ping用-t参数发出命令怎么办?我如何不断阅读这个流?
请你解释一下*显然*不一致的行为给我:
use strict;
sub a { 2 + 2 };
print 2 * a(); # this prints: 8
print a() * 2; # this prints: 8
print 2 * a; # this prints: 8
print a * 2; # this prints: 4
Run Code Online (Sandbox Code Playgroud)
谢谢你的回答,非常有帮助 - 我学到了很多东西.
在图标模式下使用qlistview时,我需要在选择图标时完全删除hilighting.使用下面的代码不再突出显示图标下方的文本,但选中后仍然会在图标上显示蓝色
QString stylesheet = "";
stylesheet += "QListView::item:alternate {background-image: transparent; background-color: transparent;}";
stylesheet += "QListView::item:selected {background-image: transparent; background-color: transparent;padding: 0px;color: black;}";
stylesheet += "QListView::item:selected:active{background-image: transparent;background-color: transparent; color: black;}";
stylesheet += "QListView::item:selected:!active{background-image: transparent;background-color: transparent;color: black;}";
setStyleSheet(stylesheet);
Run Code Online (Sandbox Code Playgroud)
有没有人知道如何在图标上更改所选颜色而不必继承QStandardItem?
我在pl/sql函数中有一个for循环,如:
FOR i IN min..max LOOP
Run Code Online (Sandbox Code Playgroud)
变量i,min,max声明为 NUMERIC
在我的情况下,min和max非常大,但范围本身很小,即:
min = 3232236033
max = 3232236286
Run Code Online (Sandbox Code Playgroud)
因为你看到范围大约是~256,但是有了这个值,oracle抛出一个数字溢出错误,我坚持如何让它工作.
我应该如何迭代这些值?
编辑
好吧,我有一个工作的答案,使用最大/最小差异循环,但是真的不可能在oracle中循环大值吗?
编辑我检索的错误是:
SQL Error: ORA-01426: nadmiar numeryczny
ORA-06512: przy "PS.DHCP", linia 88
01426. 00000 - "numeric overflow"
*Cause: Evaluation of an value expression causes an overflow/underflow.
*Action: Reduce the operands.
Run Code Online (Sandbox Code Playgroud)
第88行的代码是:
FOR client_ip IN min_host..max_host
Run Code Online (Sandbox Code Playgroud)
min_host,max_host,client_ip是inet_aton(数字表示IP)的结果
a= struct('a1',{1,2,3},'a2',{4,5,6})
怎么能得到1的值;
我尝试使用返回错误的a.a1 {1}
>> a.a1{1}
??? Field reference for multiple structure elements that is followed by more reference blocks is an
error.
Run Code Online (Sandbox Code Playgroud)
我如何访问1?谢谢.
编辑
A = struct{'a1',[1 2 3],'a2',[4 5 6]}
我如何访问1.我使用,A(1).a1但我得到1 2 3
我在Django中有这个奇怪的分页错误:使用object_list作为视图的返回,但是向它传递一个"paginate_by"参数,它重复了一些结果; 否则,如果我删除参数或设置为"paginate_by = None",则结果是正确的.
如果使用分页,结果数量将保持总计,因此,由于重复结果,最后的结果将不在列表中,因此它们不会出现在模板中.
关于可能发生什么的任何想法?
谢谢!
问题:我正在查找每个WellKnownSidType枚举成员的帐户名称和SID,如下所示.
为什么有时会失败?
为什么有时会将WellKnownSidType转换为sid失败?
据我了解,只有从sid到accountname的转换有时会失败,甚至只有当帐户不是本地而不是域时才会失败.
例如,在将enum LogonIdsSid转换为SID时,我得到:
Bekannte SIDs des TypsLogonIdsSidkönnennichterstellt werden.
(无法创建LogonIdsSid类型的已知SID.)
或者在查找NTAuthoritySid的
帐户名时,我得到:Manche oderallestatitätsverweisekontentenichtübersetztwerden.
(部分或全部的标识 - 引用无法翻译.)
Sub Main()
Enumerations.SidInfo(Of System.Security.Principal.WellKnownSidType)()
End Sub
Public Class Enumerations
Public Shared Sub SidInfo(Of T)()
Dim enumType As Type = GetType(T)
For Each ThisEnumValue As T In System.Enum.GetValues(GetType(T))
Try
Console.WriteLine("Enum: System.Security.Principal.WellKnownSidType." + System.Enum.Format(GetType(T), ThisEnumValue, "G"))
Dim enumItem1 As System.Reflection.FieldInfo = enumType.GetField(System.Enum.Format(GetType(T), ThisEnumValue, "G"))
Dim enumValue1 As T = CType(enumItem1.GetValue(enumType), T)
Dim sid As System.Security.Principal.SecurityIdentifier = New System.Security.Principal.SecurityIdentifier(CType(CType(enumValue1, Object), System.Security.Principal.WellKnownSidType), Nothing)
Console.WriteLine("SID: " + …Run Code Online (Sandbox Code Playgroud) 我有以下形式的JPGS序列:
Logo_1001.jpg
Logo_1002.jpg
Logo_1003.jpg
Logo_1004.jpg
Logo_1005.jpg
...
all the way to
Logo_1208.jpg
Run Code Online (Sandbox Code Playgroud)
我试图每秒(大致)改变图像的来源,以模仿动画gif,使用这些JPG.此动画在单击图像时开始.
这是我到目前为止使用的,虽然我确信它可以更好地编码.
此外,它现在还没有真正发挥作用; x
function StartAnimation() {
var name = $('#logo').attr('src');
var index = name.indexOf(".jpg");
var int = name.slice(index-4,index);
while(int<1208){
int++;
var newname=name.slice(0,index-4);
newname=newname+int;
name=newname+".jpg";
$('#logo').attr('src',name).delay(500);
}
}
$("#logo").click(function() {
StartAnimation()
});
Run Code Online (Sandbox Code Playgroud)
思考?援助?
谢谢