1

我正在创建我的第一个聊天程序(使用 java 中的图形),我正在使用 JavaFx 场景构建器创建一个包含一些图片的 GUI,然后是 1-2 个可以互相聊天的人。这个想法是,当连接到服务器的客户端中的任何一个与另一个客户端通信时,将显示一个小气泡。

我的想法是使用一个文本字段来创建它,然后我将在 CSS 中进行编辑,使其看起来像一个语音气泡。

我如何尝试寻找能够配置我的文本字段的 CSS 样式表,但到目前为止没有任何效果,有人能帮我解决这个问题吗?到目前为止,我尝试过的两个样式表是:

    .speech-bubble {
    position:relative;
    width: 320px;
    padding: 10px;
    margin: 3em;
    background-color:#FFF;
    color: #666;
    font: normal 12px "Segoe UI", Arial, Sans-serif;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    border: 10px solid rgba(0,0,0,0.095);
}
.speech-bubble p {
    font-size: 1.25em;
}

.speech-bubble:before,
.speech-bubble:after {
    content: "\0020";
    display:block;
    position:absolute;
    top:-20px;  /* Offset top the height of the pointer's border-width */
    left:20px;
    z-index:2;
    width: 0;
    height: 0;
    overflow:hidden;
    border: solid 20px transparent;
    border-top: 0;
    border-bottom-color:#FFF;
}
.speech-bubble:before {
    top:-30px; /* Offset of pointer border-width + bubble border-width */
    z-index:1;
    border-bottom-color:rgba(0,0,0,0.095);
}


    .bubble{
    background-color: #F2F2F2;
    border-radius: 5px;
    box-shadow: 0px 0px 6px #B2B2B2;
    height: 200px;
    margin: 20px;
    width:  275px;
}

.bubble::after {
    background-color: #F2F2F2;
    box-shadow: -2px 2px 2px 0 rgba( 178, 178, 178, .4 );
    content: "\00a0";
    display: block;
    height: 20px;
    left: -10px;
    position: relative;
    top: 20px;
    transform: rotate( 45deg );
    width:  20px;
}

问题是当我将它添加到我的文本字段时它不会改变外观我不知道我做错了还是这些样式表不适合文本字段

希望有人能够帮助我提前谢谢你:

4

1 回答 1

2

这个 CSS 看起来像 web CSS,据我所知是不受支持的。有效的 JavaFX css 属性通常以“-fx”开头。这里有一个参考:

http://docs.oracle.com/javafx/2/api/javafx/scene/doc-files/cssref.html

确保您的文本字段控件上有语音气泡 CSS 类。尝试一一添加更改并在 SceneBuilder 中检查结果。当我尝试一次进行太多更改时,其中一个不可避免地不起作用。

于 2012-09-21T12:42:48.360 回答