Trong khi Mathematica không hỗ trợ trực tiếp cửa sổ sổ tay được gắn thẻ, bạn có thể sao chép một số hiệu ứng bằng cách sử dụng DockedCells
. Giao diện Điều hướng Sách/Chức năng Ảo (từ menu trợ giúp) thực hiện điều này ... về cơ bản nó là một trình chiếu với hai trang trình bày, một cái giữ VB và một có chứa FN, với giao diện điều hướng DockedCells
được điều khiển bởi NotebookFind
trông hơi như các tab.
Dưới đây là ý chính về cách bạn có thể tự tạo một sổ ghi chép như vậy. Xin lỗi, có một số loại khái niệm nâng cao ở đây ... nếu có bất kỳ phần nào của giải pháp này mà bạn muốn tìm hiểu thêm về, có thể bạn có thể quay ra nhiều câu hỏi hơn.
(* make a single page of the notebook *)
page[tag_String] :=
[email protected][{Cell["", "SlideShowNavigationBar",
CellTags -> {tag}], Cell[tag, "Title"]}];
(* make a single tab-like button which selects the page *)
button[tag_String] :=
Button[Dynamic[
Setter[Dynamic[
CurrentValue[EvaluationNotebook[], {TaggingRules, "page"},
tag]], tag]],
CurrentValue[EvaluationNotebook[], {TaggingRules, "page"}] = tag;
NotebookLocate[tag],
Appearance -> None];
(* make a notebook based upon a list of strings which are names of tabs *)
makeTabbedNotebook[nameList_List] :=
[email protected][page /@ nameList,
DockedCells ->
ToBoxes[ExpressionCell[Row[button /@ nameList],
"DockedCell"]][[1]],
ScreenStyleEnvironment -> "SlideShow"];
makeTabbedNotebook[{"First", "Second", "Third"}]
Chỉnh sửa: thay đổi NotebookFind[ButtonNotebook[],tag,All,CellTags]
, mà dường như không phải lúc nào di chuyển trình chiếu một cách chính xác, để NotebookLocate[tag]
. Xem thảo luận trong nhận xét. Hai bit của mã nên, theo lý thuyết, là tương đương, nhưng một lỗi trong Mathematica 8 xuất hiện để làm cho chúng hành xử khác nhau đôi khi.
Nguồn
2012-01-16 22:03:39
Mathematica hỗ trợ phân trang sổ ghi chép cho bản trình bày và nó cũng hỗ trợ "ô được gắn đế" (luôn hiển thị ở trên cùng). Bạn có thể kết hợp cả hai để tạo giao diện người dùng trong ô được gắn để chuyển đổi giữa các trang. Đây chỉ là một ý tưởng cho một điểm khởi đầu. – Szabolcs
Tôi đã đăng một câu trả lời rằng sau khi suy nghĩ thêm về nó chỉ hoạt động cho đầu ra. Tôi nghĩ cách nhanh nhất để làm điều này là tạo một thanh tab hoặc bảng màu riêng biệt chuyển đổi giữa các cửa sổ bằng cách đặt Hiển thị-> Sai cho tất cả trừ cửa sổ/sổ ghi chép đã chọn. Điều này có thể tạo ra ảo tưởng về giao diện tab. –
Không có giao diện tab được gắn sẵn trong giao diện người dùng * Mathematica * (nhưng đây là một gợi ý tuyệt vời để báo cáo tới [email protected]). Điều gần nhất trong giao diện người dùng giao diện người dùng mà tôi có thể nghĩ đến là môi trường trình chiếu (mở trình đơn 'Palettes' và chọn 'Trình chiếu'). –