Multi-level Keyboard Navigation for Data Grids

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data grids lack intuitive navigation methods for users to transition between cells and overlaying objects using only a keyboard, particularly in applications like Microsoft Excel, where Tab and arrow keys navigate cells or ribbon functions, but not efficiently between cells and overlaying objects.

Innovation Solution

Implementing a method with multiple navigation levels, utilizing specific keyboard keys (e.g., F2 for level change and ESC for higher navigation) to navigate among software components, within data grids, and within cells, allowing users to efficiently move between components and objects within the GUI.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If conventional keyboard navigation (Tab and arrow keys) is used to navigate cells and ribbon functions, then cell navigation is achieved, but navigation between cells and overlaying objects becomes complex and non-intuitive

Engineering Contradiction:
Improvekeyboard navigationVSAvoidnavigation complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent segments keyboard navigation into distinct levels: first level for navigating between software components (windows, dialogs), second level for navigating within a data grid (cells, rows, columns), and third level for navigating within overlaying objects. This segmentation allows each navigation context to have dedicated keyboard shortcuts, resolving the complexity of multi-level navigation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to keyboard navigation by enabling level changes through specific keys (F2 to go deeper, ESC to go higher). This vertical dimension of navigation adds depth to the traditional horizontal/tab-based navigation, allowing users to efficiently traverse multiple hierarchical levels without confusion.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If multiple navigation levels are implemented to navigate among software components, within data grids, and within cells, then navigation efficiency is improved, but the system complexity increases

Engineering Contradiction:
Improvenavigation efficiencyVSAvoidnavigation system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal navigation system that handles multiple navigation contexts (software components, data grids, overlaying objects) through a single integrated framework. The same navigation engine manages all levels, reducing overall system complexity while maintaining high efficiency across different navigation scenarios.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces navigation level indicators and focus management as intermediary mechanisms that mediate between different navigation levels. These intermediaries provide visual feedback and control information, making the complex multi-level navigation system more manageable and intuitive for users.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11769002B2Extended data grid components with multi-level navigation
Publication Date: 2023.09.26 ORACLE INT CORP
  • US11769002B2 patent drawing
  • US11769002B2 patent drawing
  • US11769002B2 patent drawing

AI summary

A method creates a data grid component in a GUI. The data grid includes data cells, header cells, corner cells, and may further include footer cells. The data grid component may have headers or footers that contain a scale and/or a ruler that relates to graphs shown in a row or column associated with the header or footer. The scale and/or ruler may be horizontal or vertical.The GUI component may allow for multilevel navigation. One level allows for navigating from component to component in the GUI, including the data grid and any other components. Another level allows for navigating within a component, including in the data grid. Available user navigation inputs include level change commands, for example tied to specific keys.