Kotlin・Java 向け Windows ネイティブ UI ライブラリ「WinUI4K」v0.2.0 を公開 - Office 風のリボン、表、グラフ、手書き入力に対応

業務アプリに欠かせない部品をそろえ、Java から使いやすい API とJava 版サンプルも追加。引き続き Apache License 2.0 で無償提供。

NTTレゾナントテクノロジー株式会社

 NTTレゾナントテクノロジー株式会社(本社:東京都千代田区大手町、代表取締役:三澤 淳志)は、2026年7月23日に公開したオープンソースソフトウェア(OSS)ライブラリ WinUI4K の新バージョン v0.2.0 を GitHub で公開しました。

WinUI4K は、プログラミング言語 Kotlin および Java から、Windows の最新GUIフレームワーク「WinUI」を直接利用できるライブラリです。C# も Visual Studio も独自のブリッジDLLも使わずに、Kotlin や Java だけで Windows ネイティブのデスクトップアプリを作れます。

v0.2.0 では、業務アプリでよく使われる画面部品を中心に機能を広げました。Word や Excel でおなじみの リボン※1、並べ替えや絞り込みができる表、折れ線・面・棒のグラフ、ペンで書き込める手書き入力(インク)などに対応しています。

あわせて、Java から使いやすい API への見直しと、すべて Java で書いたサンプルギャラリーの同梱も行いました。これまでどおり、Apache License 2.0 のもと、商用・非商用を問わず無償で利用できます。

リポジトリ:https://github.com/nttr-tech/winui4k

3行でわかる WinUI4K v0.2.0

・  Word、Excel、PowerPoint、CAD ソフトなどで採用されているリボン型UIを追加

・  表・グラフ・手書き入力・ファイル選択ダイアログ・クリップボード など、業務アプリに欠かせない部品を追加

・  Java から使いやすい API に見直し

背景:「画面は作れる」から「業務アプリを作れる」へ 

7月に公開した v0.1.0 では、ボタンや入力欄、画面遷移などの基本的な GUI 部品(コントロール)を Kotlin・Java から扱えるようになりました。

一方、実際の業務アプリには、たくさんの機能を整理して並べるメニューや、一覧データを扱う表、数値の推移を見せるグラフなど、より大きな部品が欠かせません。Swing や JavaFX で作られた業務アプリを WinUI に移すうえでも、こうした部品があるかどうかが大きな判断材料になります。

v0.2.0 は、この「業務アプリを作るのに必要な部品」を充実させることに重点を置きました。また、Kotlin だけでなく Java の現場でも違和感なく使えるよう、Java API の使い勝手を全面的に見直しています。

この記事に出てくる用語

・  リボン:Word や Excel の画面上部にある、タブで切り替えながら機能のボタンを大きなアイコンで並べるメニュー。 

・  QAT(クイック アクセス ツール バー):リボンの上に置く、よく使う機能のボタンを並べた小さなバー。 

・  KeyTip(キーヒント):Alt キーを押すとボタンの上に表示される英字。キーボードだけでリボンを操作できる。 

・  TableView:Windows App SDK の新しい表の部品。列ごとの並べ替えや絞り込みができる。 

・  インク(Ink):ペンやマウスでの手書き入力を、線のデータとして扱う Windows の仕組み。 

・  Windows App SDK:WinUI を含む、Windows アプリ開発用の部品集。OS とは別に配布・更新される。 

・  実験版(experimental):Windows App SDK のうち、正式版の前に新機能を試せるように公開されている版。 

・  Maven Central:Java 向けライブラリを配布する公開リポジトリ。ビルド設定に1行書くだけでライブラリを取り込める。

v0.2.0 の主な新機能 

1. Office 風のリボン(拡張ライブラリ winui4k-extension-ribbon) 

Word や Excel のようなリボンと、その周りのバーをまとめて提供します。C# 製の OSS「RibbonSpace」(MIT License)を参考に、Kotlin だけで作り直したもので、ここでもブリッジ DLL や C# は使いません。

・  リボンの基本機能:タブとグループ、大小のボタン、ドロップダウン、分割ボタン、ギャラリー(スタイルの一覧)、色の選択、表の挿入、バックステージ(「ファイル」タブの全画面メニュー)。 

・  画面の幅に合わせた自動レイアウト:ウィンドウが狭くなると、ボタンを小さくしたり、グループを折りたたんだりして自動で収めます。1行に縮めた「シンプル表示」にも対応します。 

・  キーボード操作と検索:Alt キーで出る KeyTip、ショートカットキー、機能を名前で探す検索ボックス(Alt+Q)とコマンド パレットを備えます。 

・  使う人に合わせたカスタマイズ:QAT やリボンの並びを利用者が変えられ、その状態を JSON で保存・復元できます。 

・  周辺のバー:ツール バー、ステータス バー、ズーム、メニュー バー、検索付きのタイトル バー、AutoCAD 風のアプリケーション メニュー。 

・  見た目と言語:ライト/ダークのテーマ切り替えに追従し、右から左へ書く言語の配置にも対応。リボン自身の表示文字列は英語・ドイツ語・フランス語・スペイン語・ポーランド語・日本語を用意しています。 

・  アクセシビリティ:UI オートメーションに対応し、スクリーンリーダーでボタン名や検索結果を読み上げられます。

データ(モデル)と表示(ビュー)を分ける Swing と同じ設計なので、ボタンの状態をモデルで変えれば表示が追従し、利用者の操作はモデルに書き戻されます。Word・Excel・PowerPoint・CAD ソフト風の4つのデモアプリと、リボンを使わないバーだけのデモアプリを同梱しています。

2. 表(WTable):Windows App SDK の新しい TableView に対応 

Windows App SDK の新しい表の部品「TableView」を使う WTable を追加しました。Swing の JTable と同じく、TableModel(データ)、TableRowSorter(並べ替え)、RowFilter(絞り込み)を組み合わせて使います。 

v0.1.0 で ListView をもとに独自に作っていた表は、この TableView ベースの WTable に置き換えました。同梱のファイラー(ファイル管理)サンプルの詳細表示も、新しい表で動いています。

 3. グラフ(WChart) 

Windows App SDK の新しいグラフ部品「Chart」を使う WChart を追加しました。折れ線・面・棒グラフと、数値・項目・日時の軸に対応しています。データは Swing の ListModel に似た SampleModel で渡し、値を変えるとグラフが追従します。

 4. 手書き入力(WInkCanvas / WInkToolbar) 

ペンやマウスで線を描ける WInkCanvas と、ペンの種類や色、太さを切り替える WInkToolbar を追加しました。 

描いた線は InkStroke などのデータとして読み書きでき、線の選択・移動・削除、クリップボードへのコピーと貼り付け、ファイルへの保存と読み込みもできます。線のデータは WinUI に依存しないモデル(InkStrokeModel)として扱えるので、アプリ側のデータとして保存・加工しやすくなっています。

 5. その他の新しい部品と機能 

・  ファイル・フォルダの選択ダイアログ(WFileOpenPicker / WFileSavePicker / WFolderPicker) 

・  クリップボード(Clipboard):テキストなどのコピー・貼り付け、内容の変化の通知、クリップボード履歴の操作 

・  設定画面の行(WSettingsCard):Windows の「設定」アプリのような、アイコン・説明・操作部品を並べた1行 

・  文字の装飾:WLabel で斜体・下線・取り消し線を指定可能に

 6. Java からの使いやすさを強化 

これまでも Java から利用できましたが、Kotlin 特有の書き方が Java から見えてしまう部分がありました。v0.2.0 では次のように見直し、Java だけで書いた Java 版サンプルギャラリー(winui4k-sample-gallery-in-java)を同梱しました。

・  イベントの受け取り(リスナー)を Runnable や Consumer などの Java 標準の型にし、ラムダ式でそのまま書けるように 

・  Kotlin の省略可能な引数に対応する、Java 向けのオーバーロード(引数違いのメソッド)を追加 

・  定数や生成用のメソッドを Java の static メンバーとして公開 

・  Kotlin 専用の型や内部 API を Java から見えないように整理

 7. ドキュメントと品質 

・  日英の解説書:概要からコアコンセプト、実践ガイド、品質と配布、内部実装までを6部構成でまとめた解説書(doc/book.ja.md / doc/book.md)を追加しました。 

・  arm64 での自動テスト:GitHub Actions に arm64 版 Windows での自動テストを追加しました。 

・  実機で分かった注意点の記録:表・グラフ・手書き入力について、実際の WinUI の挙動から分かった注意点をドキュメントに記録しています。

 数字で見る v0.2.0 

・  サンプルギャラリーのページ数:76 → 83(リボン、グラフ、手書き入力2種、設定カード、クリップボード、ファイル選択の7ページを追加) 

・  リボンのデモアプリ:5本(Word 風、Excel 風、PowerPoint 風、CAD 風、ツール バー類) 

・  リボンの表示言語:6言語 

・  v0.1.0 からの変更規模:約460ファイル、約6万7千行の追加

互換性に関する注意 

・  Windows App SDK の実験版が必要になりました。 表(TableView)、グラフ(Chart)、手書き入力(InkCanvas / InkToolbar)は、Windows App SDK 2.5 実験版(2.5.4-experimental)で提供されている部品です。そのため v0.2.0 は、v0.1.0 で使っていた正式版(2.2)ではなく、実験版のランタイムを必要とします。WinUI4K は起動時に、必要なランタイムの導入を自動で案内します。

・  実験版の部品は、今後仕様が変わる可能性があります。 WTable、WChart、WInkCanvas、WInkToolbar は、Windows App SDK の正式版に取り込まれる際に変更が入る場合があります。

・  表の API が変わりました。 v0.1.0 の ListView ベースの WTable は、TableView ベースの新しい WTable に置き換わっています。

・  リボンは別のライブラリになりました。 リボンを使うには winui4k-extension-ribbon を追加してください(全部入りの winui4k-all には含まれています)。

まず動かしてみる 

必要なのは JDK 25(x64)だけです。次のコマンドでサンプルギャラリーが起動し、新しい部品をその場で試せます。

リボンのデモアプリは、次のように起動できます。

自分のアプリに組み込むときは、Maven Central から取得できます(Gradle の例)。

リボンも、Swing と同じ感覚でモデルを組み立てて表示します。

開発者コメント 

「v0.1.0 で『Kotlin・Java から本物の WinUI を動かせる』ことを示せましたが、業務アプリを作るにはリボンや表、グラフのような大きな部品が欠かせません。v0.2.0 では、そうした部品を Swing と同じモデルとビューの考え方で使えるようにしました。特にリボンは、KeyTip によるキーボード操作や、画面の幅に合わせた自動レイアウト、スクリーンリーダーへの対応まで作り込んでいます。Java だけで書いたサンプルギャラリーも用意したので、Java の現場の方にもぜひ試していただきたいです。」(NTTレゾナントテクノロジー 久納 孝治)

 今後の展開 

WinUI4K は、引き続き次のような取り組みを進めます。 

・  Windows App SDK の正式版への追随(表・グラフ・手書き入力の正式版への移行を含む) 

・  業務アプリで求められるGUI部品のさらなる拡充 

・  Swing や JavaFX の資産をより直接的に移行できるラッパーの整備 

・  日本語でのドキュメントとサポートの充実 

不具合報告や機能要望、プルリクエストは GitHub の Issue で受け付けています。

 Developers X Summit 2026 に出展します 

当社は、2026年11月25日(水)にベルサール神田で開催される「Developers X Summit 2026」(主催:株式会社翔泳社)に登壇・出展します。当社ブースでは、WinUI4K をはじめとする当社の取り組みをご紹介する予定です。Swing や JavaFX で作られた業務アプリの今後をお考えの方も、ぜひお立ち寄りください。

・  名称:Developers X Summit 2026 

・  会期:2026年11月25日(水)13:00〜セッション開始予定 

・  会場:ベルサール神田(東京都千代田区) 

・ セッション詳細:デスクトップアプリをWindows 11ネイティブに進化させる 〜WinUI4Kで実現する資産継承型モダナイゼーションの実践〜(登壇:NTTレゾナントテクノロジー 久納 孝治) 

・  参加費:無料(事前登録制、申込締切 11月20日 13:00) 

・  イベントサイト:https://event.shoeisha.jp/devsumi/20261125

プロジェクト情報 

・  名称:WinUI4K(WinUI for Kotlin & Java) 

・  バージョン:v0.2.0 

・  ライセンス:Apache License 2.0(同ライセンスの条項に従い、商用・非商用ともに無償で利用可)。リボンは RibbonSpace(MIT License)の再実装で、その著作権表示とライセンス文を同梱 

・  リポジトリ:https://github.com/nttr-tech/winui4k 

・  配布:GitHub リリース(全部入りの jar、サンプルギャラリーのインストーラー)、Maven Central(com.appkitbox.winui4k) 

・  動作環境:Windows 11(x64)。Windows App SDK 2.5 実験版(2.5.4-experimental)ランタイムが必要 

・  必要環境:JDK 25(x64)でビルド/起動。ライブラリ自体は Java 8 以降で動作 

・  言語/技術:Kotlin、JVM の FFI(Panama / JNA / JNR)、WinRT、Windows App SDK

NTTレゾナントテクノロジーについて

 NTTレゾナントテクノロジーは、顧客体験(CX)向上を軸に、既存システムの刷新(モダナイゼーション)から開発、品質検証までを一貫して支援し、企業のデジタルプロジェクトの成功をサポートしています。 

【会社概要】

会社名:NTTレゾナントテクノロジー株式会社

代表者名:三澤 淳志(代表取締役社長)

本社所在地:〒100-0004 

東京都千代田区大手町1-5-1 大手町ファーストスクエア イーストタワー12F

資本金:305百万円(2022年3月時点)

事業内容:

① クラウド型スマホ実機検証サービス「Remote TestKit」の提供

② テストソリューション(第三者検証・テスト自動化支援)

③ モダナイゼーション支援(「AIリマスター」)

④ 品質向上SI

⑤ スマートフォン向けアプリケーション・サービスの企画・開発・運用、UI/UXデザイン 

注記 

※1 本文中の「Office 風」「Word 風」「Excel 風」「PowerPoint 風」「AutoCAD 風」は、画面の構成が似ていることを表す表現です。WinUI4K は Microsoft Corporation および Autodesk, Inc. の製品ではなく、両社から承認や提携を受けたものでもありません。 

※ 本文中の情報は公開時点のものです。仕様や対応状況は今後変更される場合があります。 

※ Windows、WinUI、Visual Studio、.NET、Microsoft Office、Word、Excel、PowerPoint、Windows App SDK は、米国 Microsoft Corporation の米国およびその他の国における商標または登録商標です。 

※ AutoCAD は、米国 Autodesk, Inc. の米国およびその他の国における商標または登録商標です。 

※ Java は、Oracle Corporation およびその子会社、関連会社の米国およびその他の国における登録商標または商標です。 

※ Kotlin は、Kotlin Foundation の商標です。 

※ その他、本文に記載の会社名、製品名、サービス名は、各社の商標または登録商標です。本文では TM、®、© などの表示を省略しています。

このプレスリリースには、メディア関係者向けの情報があります

メディアユーザー登録を行うと、企業担当者の連絡先や、イベント・記者会見の情報など様々な特記情報を閲覧できます。※内容はプレスリリースにより異なります。

すべての画像


ダウンロード
プレスリリース素材

このプレスリリース内で使われている画像ファイルがダウンロードできます

会社概要

URL
-
業種
情報通信
本社所在地
大手町1-5-1 大手町ファーストスクエア イーストタワー12F
電話番号
03-3525-8977
代表者名
三澤 淳志
上場
未上場
資本金
-
設立
2012年04月