问题列表 - 第14259页

Java观察者和可观察者

任何人都可以解释为什么我点击这个JFrame上的按钮时没有调用printobserver上的更新方法?

import java.awt.BorderLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.IOException;
import java.net.InetAddress;
import java.net.SocketException;
import java.util.Observable;
import java.util.Observer;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;


/**
 * 
 */

/**
 * @author james
 *
 */
public class Driver extends JFrame {


    /**
     * @param title
     */
    public Driver() {
        super("click me");

        setSize(400, 400);
        //set up observer

        final ButtonObservable gw = new ButtonObservable();
        Observer o1 = new PrintObserver();
        gw.addObserver(o1);

        setLayout(new BorderLayout());
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setExtendedState(Frame.MAXIMIZED_BOTH);
        JPanel panel = new JPanel(); …
Run Code Online (Sandbox Code Playgroud)

java design-patterns observer-pattern

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

Eclipse 3.5无法安装插件

我真的不知道发生了什么事情与Eclipse 3.5(3.5.0或3.5.1,同样的问题),但是它已经2现在日子,我与Eclipse努力寻找一种方法,使通过插件安装工作"安装新软件屏幕"!!! 我访问了很多论坛和博客,尝试了许多解决方案,但都是徒劳的:每次当前问题都消失了,并且出现了新的问题.

我试图让它在我的办公室工作,所以在代理后面.到目前为止,我得到的最好建议是关于NTLM代理的已知问题:http://wiki.eclipse.org/ECF_Filetransfer_Support_for_NTLMv2_Proxies.我提供了提示,但现在我有一条新的错误消息:Eclipse根本找不到存储库...例如,这是我现在使用Galileo更新站点本身得到的信息:

org.eclipse.equinox.internal.provisional.p2.core.ProvisionException: No repository found at http://download.eclipse.org/releases/galileo.
    at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.fail(AbstractRepositoryManager.java:380)
    at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:606)
    at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92)
    at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:88)
    at org.eclipse.equinox.internal.provisional.p2.ui.operations.ProvisioningUtil.loadMetadataRepository(ProvisioningUtil.java:88)
    at org.eclipse.equinox.internal.provisional.p2.ui.QueryableMetadataRepositoryManager.doLoadRepository(QueryableMetadataRepositoryManager.java:55)
    at org.eclipse.equinox.internal.provisional.p2.ui.QueryableRepositoryManager.loadRepository(QueryableRepositoryManager.java:195)
    at org.eclipse.equinox.internal.provisional.p2.ui.QueryableRepositoryManager.loadAll(QueryableRepositoryManager.java:108)
    at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.run(PreloadingRepositoryHandler.java:71)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Run Code Online (Sandbox Code Playgroud)

与Samething http://download.eclipse.org/eclipse/updates/3.5,或http://download.eclipse.org/tools/mylyn/update/e3.4/和任何网站:没有人的作品.

请有人帮忙!

PS:下面有一些细节:

我也有与第三方软件相同的问题...例如:http://www.epic-ide.org/updates/testing/site.xml ....同样的错误消息.

如果我转到"首选项">"安装/更新">"可用软件站点",请单击任何站点,在"测试连接"上,我会收到包含此错误消息的ProvisionException(当我单击详细信息时):

无法在http://download.eclipse.org/technology/epp/packages/galileo/site.xml上读取存储库.无法在http://download.eclipse.org/technology/epp/packages/galileo/site.xml上读取存储库.服务器重定向次数太多(20)

解决方案是: 在您的eclipse.ini文件中添加以下行(之前-vmargs):(在3.5; 3.5.1; 3.6.2上验证)

-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclient
-Dhttp.proxyPort=8080
-Dhttp.proxyHost=myproxy
-Dhttp.proxyUser=mydomain\myusername
-Dhttp.proxyPassword=mypassword
-Dhttp.nonProxyHosts=localhost|127.0.0.1
Run Code Online (Sandbox Code Playgroud)

java eclipse ide eclipse-3.5

30
推荐指数
5
解决办法
11万
查看次数

C++模板类型转换与派生

我试图从一个泛型转换为另一个,说:

myClass<MoreAbstract> anItem = myclass<DerivateFromMoreAbstract> anotherObject;
Run Code Online (Sandbox Code Playgroud)

或者做类似的事情

aFunction(anotherObject); // myclass<DerivateFromMoreAbstract> anotherObject 
Run Code Online (Sandbox Code Playgroud)

其中aFunction签名是

aFunction(myClass<MoreAbstract> item);
Run Code Online (Sandbox Code Playgroud)

实际上,myClass实际上是我在网上找到的shared_ptr的简化实现.我想知道是否有任何方式我可以实际从一种指针类型切换到另一种被封装的指针类型.

有没有办法做这样的演员?如果是这样,那么正确的做法是什么?

如果它对任何人有帮助,VC++会给我这个错误:

Error 1 error C2440: 'type cast' : cannot convert from 'myClass<T>' to 'myClass<T>'
Run Code Online (Sandbox Code Playgroud)

c++ templates casting

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

如何在用户右键单击Mac上cocoa app的dock-icon时创建菜单?

如何在用户右键单击Mac上cocoa app的dock-icon时创建菜单?

非常感谢你提前!

马克斯

cocoa objective-c

10
推荐指数
1
解决办法
1177
查看次数

如何每5个结果执行一次操作?

如何在for每5个结果中在循环内执行一个动作?

基本上我只是想模拟一个有5列的表.

php logic loops for-loop

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

为Linux内核开发设置Netbeans/Eclipse

我正在做一些Linux内核开发,我正在尝试使用Netbeans.尽管宣布支持基于Make的C项目,但我无法创建功能齐全的Netbeans项目.这是尽管编译Netbeans分析使用完整调试信息编译的内核二进制文件.问题包括:

  • 错误地排除了文件:某些文件在项目中显示为灰色,这意味着Netbeans不相信它们应该包含在项目中,而实际上它们已编译到内核中.主要问题是Netbeans将错过这些文件中存在的任何定义,例如数据结构和函数,但也会错过宏定义.
  • 找不到定义:相当不言自明 - 通常,Netbeans找不到某些东西的定义.这部分是上述问题的结果.
  • 找不到头文件:不言自明

我想知道是否有人在为Linux内核开发设置Netbeans方面取得了成功,如果是,那么他们使用了什么设置.最终,我正在寻找在NetBeans中能够要么解析Makefile文件(首选)或提取二进制调试信息(不太理想,因为这会显著放缓编译),并自动确定哪些文件实际上是编译和宏实际上是定义的.然后,基于此,我希望能够找到任何数据结构,变量,函数等的定义,并具有完整的自动完成功能.

让我以一些观点为这个问题作序:

  • 我对涉及Vim/Emacs的解决方案不感兴趣.我知道有些人喜欢他们,但我不是其中之一.
  • 正如标题所示,我也很高兴知道如何设置Eclipse以满足我的需求
  • 虽然我更喜欢完美的报道,但是只错过百万分之一的定义显然很好

SO是有用的"相关问题"的特征告诉我,下面的问题是关于:/sf/ask/10452501/.在阅读它之后,问题更多的是IDE之间的比较,而我正在寻找如何设置特定的IDE.即便如此,用户Wade Mealing似乎在使用Eclipse进行此类开发方面具有一些专业知识,所以我当然会感谢他(当然还有你所有的)答案.

干杯

c eclipse linux-kernel

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

9
推荐指数
1
解决办法
1252
查看次数

Gnu Makefile - 处理依赖项

Unix平台上的C++程序员使用什么方法来创建和管理Makefile?

我在我的项目中使用手工制作的Makefile,但它们不处理头文件更改和其他依赖项.我google了一下,在这里找到了一个很好的解决方案.

但是我在sed命令中遇到了一个问题 -

    sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
        -e '/^$$/ d' -e 's/$$/ :/' < $*.d >> $*.P; \
Run Code Online (Sandbox Code Playgroud)

问题在于第3个表达式"-e's/*\$$ //".它不起作用.它应该删除尾随反斜杠.我知道那里必须有双倍的美元,因为这是一个Makefile.有人能告诉我这里有什么问题吗?

这是完整的Makefile -

CC=g++
CFLAGS=-g -Wall
LIBS=-lpthread

OBJS=file1.o file2.o
TARGET=testProg

$(TARGET) : $(OBJS)
        $(CC) -o $@ $^ $(CFLAGS) $(LIBS)

%.o : %.cpp
        $(CC) -MMD -c -o $@ $< $(CFLAGS)
        @cp $*.d $*.P; \
            sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
                -e '/^$$/ d' -e 's/$$/ :/' < $*.d >> …
Run Code Online (Sandbox Code Playgroud)

c++ unix gnu makefile sed

12
推荐指数
2
解决办法
2万
查看次数

在Python中覆盖对象的复制/深度复制操作的正确方法是什么?

所以只是为了建立,我觉得我理解复制模块中的copyvs 之间的区别deepcopy,我已经使用过copy.copy并且copy.deepcopy成功之前,但这是我第一次真正去重载__copy____deepcopy__方法.我已经围绕谷歌搜索,并通过看内置的Python模块查找的实例__copy____deepcopy__功能(例如sets.py,decimal.pyfractions.py),但我仍然肯定不是100%我已经得到了它的权利.

这是我的情景:

我有一个配置对象,它主要由简单属性组成(尽管它可能包含其他非基本对象的列表).最初,我将使用一组默认值来实例化一个配置对象.此配置将切换到多个其他对象(以确保所有对象以相同的配置启动).然而,一旦用户交互开始,每个对象将需要能够独立地调整配置而不影响彼此的配置(对我来说,我需要使用我的初始配置的深度复制来处理).

这是一个示例对象:

class ChartConfig(object):

    def __init__(self):

        #Drawing properties (Booleans/strings)
        self.antialiased = None
        self.plot_style = None
        self.plot_title = None
        self.autoscale = None

        #X axis properties (strings/ints)
        self.xaxis_title = None
        self.xaxis_tick_rotation = None
        self.xaxis_tick_align = None

        #Y axis properties (strings/ints)
        self.yaxis_title = None
        self.yaxis_tick_rotation = None
        self.yaxis_tick_align = None

        #A list of non-primitive objects
        self.trace_configs = [] …
Run Code Online (Sandbox Code Playgroud)

python python-internals

82
推荐指数
5
解决办法
5万
查看次数

防止密码提示正确输入密码

我正在实现密码+密码提示代码我想要阻止用户提示密码提示立即显示实际密码.

以下是我想要阻止的方案:

让我们说密码是:foob​​ar123

然后密码提示不能是:

  • "foobar123"
  • "密码是:foobar123"
  • "foobar-1-2-3"(或任何其他x len分隔符)
  • "f00bar123"(用零替换o)

几个问题:

  1. 我对此过火了吗?我应该让用户为不知不觉的安全付出代价吗?
  2. 我是否错过了一个我需要预防的明显场景?
  3. 可以使用正则表达式评估每个方案吗?这是我能想到的最可扩展的添加未来检查的方法.

security passwords algorithm

3
推荐指数
1
解决办法
1117
查看次数