小编xon*_*ned的帖子

样式化默认JavaFX对话框

我正在寻找一种方法来设置默认的JavaFX Dialog(javafx.scene.control.Dialog).

我试图获得DialogPane并添加样式表,但它只涵盖了对话框的一小部分.我更喜欢只使用外部css文件设置样式,而不在代码上添加styleClasses.这看起来很混乱(标题,内容,内容上的内容等等......)

我已经googled很多,只找到了ControlsFX的例子,但是因为jdk8_40 JavaFX拥有它自己的Dialogs,我现在就使用它们.

有什么建议?

编辑:

自JoséPereda发布解决方案后,我创建了自己的dialog.css.我会在这里发布,因为它涵盖整个对话框,也许有人想要复制并粘贴它.注意.dialog-pane已经是给定的styleClass名称,因此您不需要应用自己的名称.当然,何塞更详细.

.dialog-pane {
    -fx-background-color: black;
}

.dialog-pane .label {
    -fx-text-fill: white;
}

.dialog-pane:header .header-panel {
    -fx-background-color: black;
}

.dialog-pane:header .header-panel .label {
    -fx-font-style: italic;
    -fx-font-size: 2em;
}
Run Code Online (Sandbox Code Playgroud)

dialog javafx javafx-8

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

如何在Tycho构建中使用包含第三方包的目录

在过去,我们在文件系统上有我们的捆绑和功能,并通过具有"目录"位置的目标定义文件在Eclipse中提供它们.通过这种方式,可以很容易地将它们与Eclipse中的Export向导一起使用.

现在我正在尝试构建一个eclipse-plugin具有第三方依赖关系的Tycho,例如javax.vecmathorg.apache.commons.math.

据我所知,在Tycho构建中获取依赖关系的最佳方法是通过p2存储库.所以我正在使用Eclipse捆绑包.但对于我的第三方软件包,似乎没有可用的p2存储库.

所以我的问题是:如何轻松地将JAR(vecmath,commons-math)放入p2存储库?

我以为我可以用Tycho构建一个p2存储库,但是当我无法访问第谷的第三方软件包时如何做到这一点?我尝试使用目标定义,但Tycho仅支持到p2存储库的链接,而不支持目录或安装.那么有没有其他方法可以在Maven/Tycho构建中使用我的第三方依赖项?

eclipse-rcp dependency-management tycho maven

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

无法在我的maven项目上获取Servlet导入

我正在处理一个servlet类,但我收到以下错误.根据我的研究,我发现我需要做一些进口.问题是我无法添加导入.这是我的servlet类.

public class School extends HttpServlet {

     public void doGet(HtttpServletRequest request, HttpServletResponse response) throw ServletException, IOException {

        String name = request.getParameter('name');
        PrintWriter writer = response.getWriter();
        writer.ptintln("<html><body>" + new Date() +"<html></html>");
     }
}
Run Code Online (Sandbox Code Playgroud)

maven servlet-3.0

5
推荐指数
0
解决办法
41
查看次数

Maven/Tycho采用了错误的捆绑版本

我正在尝试使用tycho构建我的eclipse-plugin.

我的包com.mycompany.math需要org.apache.commons.math-1.2.0,它安装在我的p2-repository中.依赖项在org.mycompany.math的MANIFEST.MF中定义:

Require-Bundle: org.apache.commons.math;bundle-version="1.2.0",
Run Code Online (Sandbox Code Playgroud)

在我的构建过程中,我收到org.apache.commons.math-classes无法解决的错误消息.在构建开始之前,maven/tycho下载了2.1.0版本.所以,我的问题是,为什么maven/tycho下载2.1.0,当我在MANIFEST.MF中定义我使用1.2.0时.

您可以在我的父pom.xml中看到我定义了三个p2-repository.最后一个,包含我所需的1.2.0版本.

我的父pom.xml:

<project...>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany</groupId>
<artifactId>com.mycompany.build</artifactId>
<version>3.1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Build</name>
<description>Parent POM for full builds</description>

<modules>
    <!-- my modules -->
</modules>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <tycho-version>0.16.0</tycho-version>
</properties>

<repositories>
    <!-- configure p2 repository to resolve against -->
    <repository>
        <id>juno</id>
        <layout>p2</layout>
        <url>http://download.eclipse.org/releases/juno/</url>
    </repository>
    <repository>
        <id>orbit</id>
        <layout>p2</layout>
<url>http://download.eclipse.org/tools/orbit/downloads/drops/S20121021123453/repository/</url>
    </repository>
    <repository> <-- CONTAINS ORG.APACHE.COMMONS.MATH-1.2.0 !
        <id>comp</id>
        <layout>p2</layout>
        <url>http:our-adress.com/p2/</url>
    </repository>
</repositories>

<build>
    <plugins>
        <plugin>
            <!-- enable tycho build extension -->
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-maven-plugin</artifactId>
            <version>${tycho-version}</version>
            <extensions>true</extensions>
        </plugin> …
Run Code Online (Sandbox Code Playgroud)

build eclipse-rcp tycho maven

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

如何从DataGridView中获取选定的对象?

我有一个System.Windows.Forms.DataGridView来展示我类型的对象IECInstance

我正在构建一个DataTable表并用我的对象填充表,并将 DataTable 设置为我的 DataGridView 的数据源。所以我的 DataGridView 正确显示了我的对象。

我现在的问题是在选择行时获取对象。

我的第一次尝试是使用这个:

IECInstance theObjectIWant = dataGridView.SelectedRows[0].DataBoundItem as IECInstance.
Run Code Online (Sandbox Code Playgroud)

DataBountItem返回一个DataRowView. 所以我在这里发现了很多关于这个问题的问题,有些人建议使用这个:

var drv = dataGridView1.SelectedRows[0].DataBoundItem as DataRowView;
var row = drv.Row as DataRow;
var val = row[X] as MyType;
Run Code Online (Sandbox Code Playgroud)

但据我所知,行[X]是对单元格(列)的访问,所以它与我的问题不匹配。

当我使用 aList<IECInstances>作为数据源而不是 DataTable 时,属性 DataBoundItem 返回正确的对象。但实际上我不想将数据源设置为列表。

为了确保:当我谈论对象时,我指的是 IECInstace 类型的业务对象。

c# datatable datarowview datagridview winforms

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