簡體   English   中英

我應該將這些字段放在MVC模型中的什么位置?

[英]Where should I put these fields in the MVC model?

假設我有三個類: JPSModelJPSView extends JPanelJPSController JPSView覆蓋paintComponent() ,后者在某個zoomFactor位置(renderPositionX, renderPositionY)處繪制圖像。

用戶可以更改的zoomFactorrenderPositionXrenderPositionY是否應位於JPSViewJPSModel setZoomFit()這樣的方法來計算zoomFactorrenderPositionXrenderPositionY方法如何?

它們都應該在JPSView因為它們與要顯示的“什么”(數據)無關。 它們都與要顯示數據的“位置”(位置)和“方式”(縮放比例)有關。

記住Model是持久的,除非它是ViewModel ,否則您永遠不會將視圖信息與之一起保存。 舉個例子,大多數PDF閱讀器為您提供了一個選項,可以在與上次關閉時完全相同的頁面(以及相同的縮放倍數)處重新打開PDF文件。 但是,這並不意味着它將頁數和縮放系數保存在PDF本身中。

為了適應這種情況,如果您想保留與“上次查看為”相關的視圖信息,則應創建一個單獨的JPSViewModel ,理想情況下,應將其保留在應用程序本地數據庫中,而不要與正在處理的文件一起保留。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM