0

アプリケーションで通常のフォーメーションを適用しようとしCssていVaadin 7ます (私は Vaadin を初めて使用します) が、適切に機能させることができません。addStyleName()特に、次のようにテーブルでメソッドを使用したいGWT:

Table table = new Table("Films");
table.addStyleName("test");

私の問題は、.css ファイルをどこに配置し、どのように「注入」するかが正確にわからないことです。Vaadin Bookと質問の最初の回答の指示に従いましたが、私のプロジェクトでは機能しません。VAADINWebContent の下にフォルダーはありません。フォルダーVAADIN/Themes/mythemeを作成し、その中にファイルmytheme.cssと styles.css を作成します。カスタムファイルが必要かどうかわかりませんstyles.css(おそらく問題はそこから来ています)。ファイルmytheme.cssは次のようになります。

@import "../reindeer/styles.css";

.test{
    margin-left: 100px;
    margin-top: 100px;
    margin-right: 100px;
}   

ファイルstyles.cssは空です。アプリケーション クラスでは、注釈を使用します。

@Theme("mytheme")
@SuppressWarnings("serial")
public class MyprojectUI extends UI {
...
}

しかし、それは機能しません。「テスト」CSS クラスが適用されないだけでなく、標準の CSS スタイルUIが失われます (黒い文字の白いページ)。警告も表示されます:

Requested resource [/VAADIN/themes/mytheme/styles.css] not found from filesystem or through class loader. Add widgetset and/or theme JAR to your classpath or add files to WebContent/VAADIN folder.
Jun 12, 2013 8:44:44 PM com.vaadin.server.VaadinServlet serveStaticResourcesInVAADIN

OK、テーマ jar が見つかりません。指示は何か違うことを示していないので、何が悪いのですか。たぶん

@import "../reindeer/styles.css";

?

更新:質問と同じ問題ですが、私はmavenを使用していません。この機会に何をすべきですか?

4

2 に答える 2

0

フォルダー VAADIN/themes/mytheme を正しく作成していました。そこにstyles.cssという名前のcssファイルを作成し、追加します@import "../reindeer/legacy-styles.css";

これで、「要求されたリソースが見つかりません」という例外が発生することはなくなりました。

ファイル VAADIN/themes/mytheme/styles.css で、新しい css-class をオーバーライドまたは定義できます。

「myColor」などのスタイル名をテーブルに追加する場合は、styles.css で次のように定義する必要があります。

.v-table-myColor { color: red; }

それをテーブルに追加します。table.addStyleName("myColor");

テーブルの CSS スタイル ルールの詳細については、こちらをご覧ください。

于 2013-06-12T22:09:58.327 に答える