问题标签 [extending]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
289 浏览

flash - 使用 jsfl 居中静态文本字段:奇怪的结果

使用 Flash CS3,我在更改文本后尝试使用 jsfl 将静态文本字段居中,如下所示:

痕迹都给了我正确的数字。但是,当我从库中打开带有所述文本字段的相关符号时,文本字段的位置偏离了一定数量的像素:

x:取决于文本宽度
y:始终为 -2,无论文本高度如何

我什至尝试过_sans字体,看看是否有区别,但没有。

知道这里可能会发生什么吗?

0 投票
4 回答
3892 浏览

erlang - Erlang:用于进程的简单 pubsub——我的方法可以吗?

免责声明:我对 Erlang 和 OTP 很陌生。

我想要一个 Erlang/OTP 中的简单 pubsub,其中进程可以在某个“集线器”订阅并接收发送到该集线器的消息副本。

我知道gen_event,但它在一个事件管理器进程中处理事件,而我希望每个订阅者都是一个独立的、自治的进程。此外,我无法接受 grokgen_event的处理程序监督。不幸的是,谷歌搜索结果充满了 XMPP (Ejabberd) 和 RabbitMQ 链接,所以我没有找到任何与我的想法相关的内容。

我的想法是这样的 pubsub 模型无缝地映射到监督树。所以我想扩展主管(gen_server引擎盖下的一个),以便能够向它的所有孩子发送演员信息。

我已经在我的快速而肮脏的自定义“调度程序”行为中破解了这个:

然而,虽然乍一看一切似乎都很好(孩子们收到消息并在失败时无缝重新启动),但我想知道这是否是个好主意。

请问有人可以批评(或批准)我的方法,和/或推荐一些替代方案吗?

0 投票
3 回答
7494 浏览

javascript - 使用重新定义父方法在 Jquery UI 中扩展小部件

我尝试根据文档(UI 版本 1.8.16)扩展 UI 对话框:

执行此代码会导致 JS 错误:“this.uiDialog is undefined”。

如果尝试覆盖 _init() 方法没有错误,但父方法调用无效。

我很困惑..哪种方式可以合法地扩展例如放置一些自定义初始化代码?

0 投票
3 回答
1151 浏览

scala - 在 Scala 中扩展匿名类型的目的是什么?

我试图更好地理解 Scala,但我似乎无法找到如下代码的有效用例:

允许这种结构的理由是什么?

谢谢!

0 投票
1 回答
7010 浏览

android - 扩展样式和主题混乱

在我的清单中,我曾经有过这样的事情

效果很好,我的意思是没有显示标题栏。

但是现在我想自定义主题(我想扩展默认的android主题)并且我创建了这个主题

然后在我设置的清单中name="Theme.NoTitleBar.new_skin",但仍然显示标题栏。

如何隐藏标题栏并仍然拥有我的新自定义主题?

还有一个问题确实添加了点“。” 在使用样式时意味着扩展?

0 投票
1 回答
646 浏览

c++ - Python 和动态扩展 C++ 类

所以我在 Python 中遇到了我的自定义类型、函数和属性的问题。

当我在 Python 中,并且我想在我的一种自定义类型(例如 Vector4)上设置一个属性时,我的代码会为const char* attribute_name参数获取 NULL(是的,我正在导入我的模块)。

奇怪的是,当我在 setter 函数中对属性名称进行硬编码时,出现错误:

SystemError: error return without exception set

我确实看到该对象是在 Python 中创建的(并在 C++ 中再次创建),所以我认为这不是问题所在。如果 setattro 钩子确实在 C++ 中成功设置了属性,我确实返回 1,并且我看到代码被调用并在 C++ 端设置属性。设置属性时不会引发错误/异常。

此外,当我在 Python 中调用我的类实例上的函数时,它会调用函数集合tp_getattro而不是检查字典。

我不完全确定为什么,也许是因为我正在设置字典并将我的函数放在那里,而不是通过PyModuleDef数组来完成,因此在PyType_Ready调用时看不到函数。

有谁知道为什么会发生这种情况?我们使用的是 Python 3.2。


相关的:

我有一个基本类型 ( tp_newand tp_dealloc),然后我在运行时创建派生类型。派生类型具有字典tp_basetp_getattrotp_setattro

这就是函数绑定到 Python 类/类型的方式:

其中 funcName 和 className 是 const char*。pythonFunc 是一个通用的 Python 函数,它处理调用绑定到我们的元系统的所有函数。classObj 是指向具有成员 m_pyClassType(PyTypeObject 的类型)的 PythonClass 的指针。

PyGeneralObj是一个新对象,有两个 const char* 和一个 void*(这是 C++ 中的对象)

我这样做PyType_Ready并且没有错误,然后增加我的类型。然后我将对象添加到我从PyImport_ImportModule. 我确实将我的主模块附加到运行时并初始化 python 并导入我的模块。


如果需要更多信息/代码,我可以发布更多信息。我希望这是有道理的,这是我第一次在 stackoverflow 上发帖。

为澄清起见,我们希望拥有在 C++ 端完全解析的动态属性。对于函数,我希望能够覆盖PyObject* self参数,以便我可以获得需要调用的函数的字符串名称。

我们不想使用 Boost、Cython 等第三方库/接口。

0 投票
2 回答
3056 浏览

flash - JSFL fl.saveDocumentAs();

我正在编写一个 JSFL 脚本,它可以调整 flas 的大小并保存各种版本,并附加名称。

我可以使用 fl.saveDocumentAs(); 弹出“另存为”提示;

但我似乎无法让 Flash 为 FLA 生成一个新名称。

我只想将“document.fla”保存为“document_foo.fla”,(以及后来的“document_qux.fla”),最好不要用“另存为”提示中断脚本。

0 投票
2 回答
2437 浏览

php - 在抽象类中测试私有方法扩展了另一个

我正在尝试在抽象类中测试私有方法。

我有三个抽象类:

测试类:

测试失败,因为错误:

AbstractClass2::__construct() 缺少参数 1,在第 190 行的 /usr/share/php/PHPUnit/Framework/MockObject/Generator.php 中调用并定义

AbstractClass2.php

AbstractClass1.php

生成器.php:190

我错了什么?或者在这种情况下如何测试我的私人功能?

0 投票
2 回答
645 浏览

java - 扩展方法中的返回类型哈希表

我有一个接口节点,它要求方法:

public HashSet getNeighbour();

NodeVariable 实现了 Node,它的邻居是 NodeFunction 类型(也实现了 Node),我写了这个方法:

public HashSet<NodeFunction> getNeighbour();

(在 NodeFunction 类中反之亦然)。

我发现如果我将 Node 中的方法签名更改为:

public HashSet<Node> getNeighbour();

然后在 NodeVariable 和 NodeFunction 中的方法我得到错误:

factorgraph.NodeFunction 中的错误 getNeighbour() cannot implement getNeighbour() in factorgraph.Node return type java.util.HashSet is not compatible with java.util.HashSet NodeFunction.java

这不是很清楚。

我发现:

在扩展接口中覆盖返回类型 - 坏主意?

Java - 当返回类型对自己的方法参数类型使用泛型时,覆盖扩展接口的返回类型

现在我更改了 Node 方法签名:

public HashSet<? extends Node> getNeighbour();

因此编译器停止抱怨。

这样对吗?为什么 HashSet 不被视为 HashSet 的“扩展”?

0 投票
2 回答
27183 浏览

android - 拓展活动课

我对 Android (Java) 开发完全陌生,对此我感到非常兴奋!谷歌的开发者指南很棒,我在短时间内学到了很多东西。它甚至让我在夜间保持清醒;)

今天我做了菜单,有些东西我不明白。这是关于扩展类。指南说:

提示:如果您的应用程序包含多个活动并且其中一些提供相同的选项菜单,请考虑创建一个除了 onCreateOptionsMenu() 和 onOptionsItemSelected() 方法之外什么都不实现的活动。然后为应该共享相同选项菜单的每个活动扩展此类。这样,您只需管理一组代码来处理菜单操作,并且每个后代类都继承菜单行为。

我不明白的一点是如何扩展一个类......假设我有一个MainActivity和一个SubActivity。我想在两个活动中都有相同的菜单,所以我做了一个MainMenuActivity。我如何为这两个活动扩展这个类?

是的,我确实在网上搜索过,但找不到任何可用的。我真的很想理解它,所以我希望任何人都可以通过一些示例代码+解释来帮助我。先感谢您!!