问题列表 - 第32603页

使用代码将NSRect居中

嘿,我有我工作的一个项目,我注意到我的NSRect,我在某倍的拉伸,y坐标将是我工作的决议的中心,是不是如果分辨率变化中心.我明白这一切是如何运作的.

问题是,我的项目将被显示在多种分辨率没有人知道一个可能的解决方案,无论屏幕是在什么方面或者分辨率居中的NSRect的.我必须声明为具有自定义绘制NSPanels我的班.关于可能解决方案的任何想法都会有所帮助.谢谢大家.

这是NSRect x,y,宽度,高度

NSRect windowFrame = NSMakeRect(400, 500, 500, 100);
Run Code Online (Sandbox Code Playgroud)

然后

window = [[Mainbox alloc] initWithContentRect:windowFrame 
                                          styleMask:NSBorderlessWindowMask 
                                            backing:NSBackingStoreBuffered 
                                              defer:NO];
Run Code Online (Sandbox Code Playgroud)

cocoa

2
推荐指数
1
解决办法
3729
查看次数

使用Timeout :: timeout(n)缩短套接字超时对我来说似乎不起作用

我在/sf/ask/36205361/?tab=oldest#tab-top找到了我认为应该完美的工作但是,它对我不起作用.

我在Windows上安装了Ruby 1.9.1,当我尝试"is_port_open"测试时,它不起作用.无论我为超时设置什么值,套接字调用仍然需要大约20秒才能超时.有什么想法吗?

ruby sockets connection-timeout

2
推荐指数
1
解决办法
1538
查看次数

ggplot:如何指定多个箱图的垂直顺序?

我想在下图中更改医院的堆叠顺序,因此#1位于顶部,#4位于底部.

该图是用

ggplot(survey,aes(x=hospital, y=age))+geom_boxplot()+coord_flip()+xlab("")+ylab ("\nPatient Age")
Run Code Online (Sandbox Code Playgroud)

我需要top-> down命令与现在相反.我不确定它为什么会这样."医院"专栏是一个重要因素.

非常感谢!

替代文字

r ggplot2 boxplot

5
推荐指数
1
解决办法
4701
查看次数

eclipse从崩溃中恢复过来

当我的计算机崩溃时,我已经打开了eclipse - 现在我已经重新启动了,我的项目中出现了各种错误.看起来好像某些文件不包含最近进行的更改.我很确定我在坠机前保存了所有东西.有谁知道恢复的最佳方法?

java eclipse crash

6
推荐指数
1
解决办法
3766
查看次数

目标c:从文件问题中读取NSString NSData

我正在使用:

NSData *output1 = [NSData dataWithContentsOfFile:@"~/centralUtilOut.tmp"];
NSString *output = [[NSString alloc]initWithData:output1 encoding:NSUTF8StringEncoding];

NSLog(@"%@", output);
[output release];
Run Code Online (Sandbox Code Playgroud)

但调试窗口中没有任何内容.

这是客观的C.

注意:centralUtilOut.tmp是一个普通的文本文件

objective-c

7
推荐指数
1
解决办法
1万
查看次数

寻找使用WinForms和/或建议重新设计实现的精彩向导示例

免责声明:在这个问题标签页面中,对话实际上意味着同样的事情,抱歉.我的理由:我不确定最终产品应该是什么样子 - 一堆独立的窗户或者一体化.

我希望改进一个用WinForms烘焙的现有的,难以维护的向导.我需要尝试保持相同的外观和感觉,但我需要清理内部逻辑.共有5个对话框,所有这些对话框都在一个巨大的方法中一个接一个地显示(当然,单击"下一个"按钮之后).来回跳跃的方式是...... 5或6个标签和GOTO!

现在,这个向导是线性的,而不是树.从任何一个对话框/页面,您最多可以访问其他两个对话框/页面.想到了双重链接列表.现在有5 * 4 = 20潜在的状态转换,而只有2*1 + 3*2 = 8它们是有效的.我不必使用gotos.他们通常是邪恶的,在这种情况下他们是 - 很难维持这个...而我正在考虑增加另一个,第6页.为什么原因gotos为在那里是最有可能,因为1.0版正在制作时A)的时间压力,B)这是5年前,所以在当时可用的奇才最好的例子/教程可能不是很大.

现在,向导的大多数页面都要求用户输入.根据用户输入的内容呈现后续页面.如果用户在第3页上说并且决定将后退按钮一直指向1,并且没有更改任何内容,并且点击下一次两次,则状态不应该更改.但是,更改页面x上的内容通常会使页面x + 1上的内容无效.但是,有一些例外,因为页面x上的某些或所有设置可能依赖于页面x-1,x-2等,但页面x + 1,x + 2等不依赖于x一些x.

我希望到目前为止事情是清楚的.我们试图通过为他们默认一些东西来帮助用户.存储事物的方式也不是很好.该对话框具有读/写属性,从/向实际控件复制内容.然后,在主方法中,存在"超级存储",其保存每页的存储.因此,当用户完成页面x并接下来命中时,首先将内容从控件复制到类的本地存储中,然后将这些内容保存到超级存储的相应成员中.

没有使用(对话框/存储器)数组和索引.每个goto目标(标签)都有单独但类似的"创建和填充"逻辑.当页面不再显示时,对话框对象会被丢弃(它们不会被丢弃,但每次要显示它们时,它们都会被重新创建并重新填充.我不相信这是必要的,因为只有需要单个手柄,并且在显示和关闭之后,我相信它可以在相同的状态下再次显示,而不必重新填充控件.如果浪费内存是唯一的问题,我可能会让事情滑落,但事情不是很容易维护,所以我不妨解决这个问题.

我在想:

  1. 将对话框存储在集合中,例如数组,但最好是DLL,因为我只能向前移动1或向后移动1,或者只能移动我列出的两个选项中的一个(对于第一个和最后一个对话框).
  2. 实际上我的标签/页面都扩展了一个共同的抽象类(因为"next","back","exit"按钮,它们的行为对所有人都是通用的).
  3. 每个标签/页面/对话框(出于此问题的目的,同样令人困惑)将具有"指挥"类可见的只读属性.这些属性将来自控件中的值(信息的真正来源),有时属性会稍微按下这些值."指挥"的责任是抓住那些并将它们存放起来.当导体希望用一种方法填充对话框时(让我们称之为"种子").我在这里遇到一些困难,因为每种种子方法的参数都不同.我希望能够利用强类型,以及保持通用性.我怀疑应该给出一些东西.我可以将字典传递给每个种子方法,但感觉太像Pythonic,就像鸭子打字一样.如果我搞砸了,我不知道直到运行时间.此外,对于任何给定的页面,字典的打包和解包更好地始终匹配.这是你进来的地方.
  4. 全局存储可以是一个巨大的字典.我可以遵守规则,保持所有密钥不同,或者根据页面将其名称加上"p1_"到"p5_",只是为了确定.我确信其他方案也存在.拥有巨型字典在最后也很方便 - 用户输入组装的顺序无关紧要,只要它正确完成即可.我也可以拥有一台状态机...... 这也是我在设计中迷失的地方.如果我把东西放在字典中,我将不得不执行很多条件逻辑,例如:如果我在第2页,并且我进行了更改,那么我通常(可能有例外)需要制作旧的默认值任何页面3,4,5无效.根据它的丑陋程度,它可能不比现有的基于goto的设计好多少.

如您所见,有一些挑战.然而,我很有希望,因为通过良好的精灵设计思考是一个肯定是以前重新发明的轮子.也许你可以推荐一个开源的C#/ mono应用程序,它带有一个线性但非平凡的向导,这样我就可以看一下实现.哎呀,甚至Java/Swing也许适合我,只要向导本质上是相似的.WPF对我来说是另一个挑战,我不想有2个问题而不是1个问题.

让我知道你能想到什么.我应该保留这些东西但是尽可能多地清理其他部分吗?随意问的问题.谢谢,

-HG

c# oop wizard winforms

5
推荐指数
1
解决办法
1879
查看次数

使用PHP选择导航

是否可以使用PHP从服务器检测页面用户在您的网站上导航到哪里,然后更新导航菜单的类以使CSS样式成为当前选择以向用户指示当前选择?

html php

0
推荐指数
1
解决办法
1397
查看次数

什么时候我们应该使用方法重载vs不同命名的方法

有时,我觉得方法超载可能会造成混乱.

class a {
public:
    void copy(float f);
    void copy(double d);
};
Run Code Online (Sandbox Code Playgroud)
a me;
me.copy(1.2); // Not obvious at the first sight on which version we are calling.
Run Code Online (Sandbox Code Playgroud)

对此的解决方法是.

class a {
public:
    void copyFloat(float f);
    void copyDouble(double d);
};
Run Code Online (Sandbox Code Playgroud)

但是,拥有不同名称的方法,执行相同的功能似乎也不是一个好主意.我可以知道,您考虑什么,在方法重载具有不同命名的方法中进行选择?

c++ oop overloading

8
推荐指数
1
解决办法
1324
查看次数

Clojure并行映射和无限序列

假设我用以下方式定义所有自然数的序列:

(def naturals (iterate inc 0))
Run Code Online (Sandbox Code Playgroud)

我还定义了一个将自然映射到nil的函数,需要一段时间来计算,如下所示:

(defn hard-comp [_] (Thread/sleep 500))
Run Code Online (Sandbox Code Playgroud)

请注意计算时间以按照度量来评估以下s表达式clojure.core/time.

(dorun (map hard-comp (range 30))) ; 15010.367496毫秒

(dorun (pmap hard-comp (range 30))) ; 537.044554 msecs

(dorun (map hard-comp (doall (take 30 naturals))))) ; 15009.488499 msecs

(dorun (pmap hard-comp (doall (take 30 naturals)))) ; 3004.499013毫秒

(doall (take 30 naturals)) ; 0.385724毫秒

(range 30) ; 0.159374毫秒

pmap 使用显式范围调用时比使用自然部分快6倍.

由于(= (range 30) (take 30 naturals))返回true并且两个对象都是类型clojure.lang.LazySeq,并且clojure在调用函数之前调用函数的所有参数,如何解释上述时序细节?

parallel-processing optimization performance clojure map

7
推荐指数
1
解决办法
836
查看次数

获得以下构建错误:"类型{---}无法解析.它是从所需的.class文件间接引用的"

所以,我在Eclipse(Java)中有以下设置:

  1. 我有一个项目(让我们称之为"项目1"),它提供了一个接口(包是私有的)
  2. 我有另一个项目("项目2"),它包含项目1中的包...此包中的类扩展了"项目1"中的包私有接口,并提供了一个很好的公共接口.
  3. 现在,我有"项目3",它引用了"项目2".然后,项目3使用项目2中提供的公共对象.

从项目3中的项目2调用构造函数后,我得到以下内容:

"类型{---}无法解析.它是从所需的.class文件间接引用的"

如果我从项目3添加对项目1的引用,一切都很好.有没有办法不用这种方式引用项目3?引用它真的没有意义.

我正在使用Eclipse(Helios)和最新的JDK等...

java eclipse

6
推荐指数
1
解决办法
8534
查看次数