СПОСОБ И УСТРОЙСТВО ДЛЯ ВЫПОЛНЕНИЯ ОПЕРАЦИИ ПЕРЕМЕЩЕНИЯ ОБЛАСТИ В ТАБЛИЦЕ
METHOD AND DEVICE FOR IMPLEMENTING MOVE OPERATION ON AREA IN TABLE

Перекрестные ссылки на родственные заявки
Данная заявка притязает на приоритет Патентной заявки Китая № 201210172578.6, поданной 30 мая 2012 года с названием «IMPLEMENTATION METHOD AND APPARATUS FOR PERFORMING MOVE OPERATION ON AREA IN TABLE», содержание которой целиком включено сюда по ссылке.
Область техники, к которой относится изобретение
Настоящее изобретение относится к компьютерным технологиям и, в частности, касается способа и устройства для выполнения операции перемещения в отношении области в таблице.
Предшествующий уровень техники
По мере развития компьютерных сенсорных технологий пользователи все в большем объеме хотят выполнять операции на компьютере, используя легкие прикосновения и жесты, что позволяет им накапливать эксплуатационный опыт и развивать свои навыки. Например, на существующем компьютере можно выполнять операцию увеличения или уменьшения изображения на текущем экране дисплея, и путем касания слов на экране выбирать необходимые слова для редактирования (копирования, вырезки и т.п.). Однако существующее программное обеспечение операционных систем не поддерживает комплексную операцию, такую как перемещение, например операцию перемещения области в таблице, например, перемещение строки или столбца в таблице. Например, функция управления списками (управление NSTableView) в операционной системе Apple (Mac OS), разработанной Apple Incorporation, не поддерживает такие функции, как свободное перемещение строки или столбца, а поддерживает только такие операции, как выбор, вставка и удаление таблицы посредством использования мыши и меню.
На фиг. 1 представлена блок-схема существующего способа перемещения строки или столбца в таблице. Последующее описание иллюстрирует способ перемещения строки в таблице. Способ перемещения столбца подобен способу перемещения строки. Как показано на фиг. 1, данный процесс включает в себя следующие этапы.
Этап 101: Выбор исходной строки, подлежащей перемещению.
На этом этапе, используя мышь, касание и т.п., можно выбрать исходную строку, с которой должна быть выполнена операция.
Этап 102: После подтверждения выбора строки выбирают соответствующую операцию из предварительно установленного операционного управляющего элемента.
На этом этапе после выбора исходной строки из операционного управляющего элемента, отображаемого на панели инструментов окна таблицы (управляющий элемент NSTableView), может быть выбрана операция, соответствующая перемещению.
Этап 103: Выбор целевой строки и вставка новой строки перед целевой строкой путем выполнения операции на операционном управляющем элементе.
Этап 104: Выбор вставленной новой строки и выбор операции склеивания из заранее установленного операционного управляющего элемента.
Этап 105: Удаление исходной строки.
На этом этапе, если с исходной строкой выполняется операция копирования, то исходную строку в первоначальной таблице необходимо будет удалить с тем, чтобы реализовать процесс перемещения. Если с исходной строкой выполняется операция вырезания, то в текущей таблице необходимо будет удалить пустую строку, соответствующую исходной строке.
Согласно вышеприведенному описанию для использования существующего способа перемещения строки или столбца в таблице, из-за того, что управляющий элемент NSTableView не поддерживает перетаскивание пользователем строки или столбца в таблице для изменения его местоположения в таблице с целью обновления табличных данных, рабочий процесс перемещения строки или столбца усложняется, удлиняется необходимый период времени и снижается эффективность перемещения, в результате чего невозможно обеспечить наглядный и удобный для пользователя операционный режим.
Сущность изобретения
В виду вышесказанного, согласно одному аспекту настоящего изобретения предлагается способ выполнения операции перемещения области в таблице, упрощающий процесс выполнения операции перемещения и повышающий эффективность перемещения.
Согласно другому аспекту настоящего изобретения предлагается устройство для выполнения операции перемещения области в таблице, упрощающее процесс выполнения операции перемещения и повышающее эффективность перемещения.
Варианты осуществления настоящего изобретения обеспечивают способ выполнения операции перемещения в отношении области в таблице, причем способ включает в себя этапы, на которых:
А. принимают информацию о начале контакта, выдаваемую из выбранной области, активируют маршрут перемещения выбранной области и устанавливают пустую область, соответствующую выбранной области, в качестве области, подлежащей заполнению;
В. принимают информацию об окончании контакта, выдаваемую из выбранной области, получают область, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, и используют полученную область в качестве целевой области; если местоположение целевой области отличается от местоположения области, подлежащей заполнению, то тогда выполняют следующий этап;
С. активируют перемещение первой промежуточной области, смежной с областью, подлежащей заполнению, в направлении целевой области, в область, подлежащую заполнению, и затем обновляют область, подлежащую заполнению, на пустую область, соответствующую первой промежуточной области; и
D. повторяют этап С до тех пор, пока обновленная область, подлежащая заполнению, не окажется пустой областью, соответствующей целевой области, и активируют перемещение выбранной области в эту пустую область, соответствующую целевой области.
В способе выполнения операции перемещения в отношении области таблицы согласно другому варианту настоящего изобретения область, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, является областью, расстояние от которой до текущего местоположения выбранной области является минимальным.
Кроме того, варианты осуществления настоящего изобретения обеспечивают устройство для перемещения области в таблице, включающее в себя модуль отслеживания, модуль обработки перемещения области и модуль перемещения области, при этом
модуль отслеживания сконфигурирован принимать информацию о начале контакта, выдаваемую из выбранной области, активировать маршрут перемещения выбранной области и устанавливать пустую область, соответствующую выбранной области, в качестве области, подлежащей заполнению;
модуль обработки перемещения области сконфигурирован принимать информацию об окончании контакта, выдаваемую из выбранной области, получать область, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, использовать полученную область в качестве целевой области, и, если местоположение целевой области отличается от местоположения области, подлежащей заполнению, то выводить активирующую информацию в модуль перемещения области; и
модуль перемещения области сконфигурирован принимать активирующую информацию, активировать перемещение первой промежуточной области, смежной с областью, подлежащей заполнению, в направлении целевой области, в область, подлежащую заполнению, и затем обновлять область, подлежащую заполнению, на пустую область, соответствующую первой промежуточной области; повторять данную операцию до тех пор, пока обновленная область, подлежащая заполнению, не окажется пустой областью, соответствующей целевой области, и активировать перемещение выбранной области в эту пустую область, соответствующую целевой области.
В устройстве для перемещения области в таблице согласно другому варианту настоящего изобретения область, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, является областью, расстояние от которой до текущего местоположения выбранной области является минимальным.
Варианты осуществления настоящего изобретения, кроме того, обеспечивают машиносчитываемый носитель, на котором хранится набор команд, и при исполнении этого набора команд машина может выполнять вышеописанный способ реализации для выполнения операции перемещения области в таблице.
На основе вышеописанного технического решения для способа реализации и устройства для выполнения операции перемещения области в таблице согласно настоящему изобретению, после приема информации о начале контакта, выдаваемой из выбранной области, активируется маршрут перемещения выбранной области, и в качестве области, подлежащей заполнению, устанавливается пустая область, соответствующая выбранной области; после приема информации об окончании контакта, выдаваемой выбранной областью, получают область, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, где данное расстояние предпочтительно является минимальным, и используют полученную область в качестве целевой области; если местоположение целевой области отличается от местоположения области, подлежащей заполнению, то активируется перемещение первой промежуточной области, смежной с областью, подлежащей заполнению, в направлении целевой области, в область, подлежащую заполнению, а затем обновляют область, подлежащую заполнению, на пустую область, соответствующую первой промежуточной области; данная операция выполняется до тех пор, пока обновленная область, подлежащая заполнению, не станет пустой областью, соответствующей целевой области, и затем активируется перемещение выбранной области в эту пустую область, соответствующую целевой области. Таким образом, перемещение области реализуется путем перетаскивания, что упрощает процесс выполнения операции и повышает эффективность перемещения.
Краткое описание чертежей
Фиг. 1 - логическая блок-схема существующего способа перемещения строки или столбца таблицы;
фиг. 2 - логическая блок-схема способа реализации для выполнения операции перемещения области в таблице согласно варианту осуществления настоящего изобретения;
фиг. 3 - логическая блок-схема способа реализации для выполнения операции перемещения области в таблице согласно первому варианту осуществления настоящего изобретения;
фиг. 4 - схема перемещения строки в отображаемых границах таблицы согласно первому варианту осуществления настоящего изобретения;
фиг. 5 - логическая блок-схема способа реализации для выполнения операции перемещения области в таблице согласно второму варианту осуществления настоящего изобретения;
фиг. 6 - схема перемещения строки за отображаемые границы таблицы согласно второму варианту осуществления настоящего изобретения;
фиг. 7 - логическая блок-схема способа реализации для выполнения операции перемещения области в таблице согласно третьему варианту осуществления настоящего изобретения;
фиг. 8 - схема перемещения строки в таблице в границах, которые не отображаются, согласно третьему варианту осуществления настоящего изобретения; и
фиг. 9 - структурная схема устройства для выполнения операции перемещения области в таблице согласно варианту осуществления настоящего изобретения.
Подробное описание вариантов осуществления изобретения
Для прояснения целей, технических решений и преимуществ настоящего изобретения оно далее подробно описывается со ссылками на сопроводительные чертежи и конкретные варианты его воплощения.
В технических решениях, относящихся к известному уровню техники, при перемещении области в таблице необходимо было выполнять такие операции, как выбор, активация всплывающего окна операционного управляющего элемента, копирование, вставка, склеивание и удаление, которые усложняют процесс выполнения операции. В вариантах настоящего изобретения предложена приспособленная к нуждам пользователя технология перемещения, которая поддерживает перемещение, где местоположение области в таблице можно свободно изменять, перетаскивая эту область с тем, чтобы реализовать ее перемещение. Процесс выполнения операции упрощается, она носит интуитивный характер, и при выполнении операции в таблице пользователь может накапливать положительный опыт и совершенствовать соответствующие навыки.
На фиг. 2 представлена логическая схема способа реализации для выполнения операции перемещения области в таблице согласно варианту осуществления настоящего изобретения. Как показано на фиг. 2, процесс включает в себя следующие этапы.
Этап 201: Прием информации о начале контакта, выдаваемой из выбранной области, активация маршрута перемещения выбранной области и установка пустой области, соответствующей выбранной области, в качестве области, подлежащей заполнению.
На этом этапе упомянутой областью может быть область строки или область столбца в таблице, причем область строки может включать в себя одну или несколько строк. Если область является областью строки в таблице, то соответственно заполняемой областью также будет область строки. Пользовательская операция включает в себя операцию, выполняемую мышью, операцию, выполняемую касанием, и т.п.
Пустая область, соответствующая некоей области, относится к области, не имеющей содержимого, оставшегося после удаления области, содержащей содержимое. Например, после того как удалена строка в таблице, содержащая данные, строка, где находилась упомянутая строка, содержащая данные, перед ее перемещением, становится пустой строкой без содержимого, и эта пустая строка представляет собой пустую область, соответствующую строке, содержащей данные, что эквивалентно пустой области, остающейся после выполнения операции вырезки в отношении этой области.
В вариантах осуществления настоящего изобретения каждая область соответствует объекту MQView. Объект MQView включает в себя данные области и отвечает за графическое представление (отрисовку) данных области в таблице, которые воспроизводятся путем графического представления данных на управляющем элементе CALayer, который указывает многослойную структуру и обеспечивается системой. За конкретным описанием объекта MQView, который здесь далее не описывается, можно обратиться к соответствующей технической литературе.
Перед приемом информации о начале контакта, выдаваемой из выбранной области, способ может включать в себя:
определение выбранной области в соответствии с отслеженной первой операцией.
На этом этапе, когда пользователю необходимо выполнить операцию перемещения в отношении области, он выбирает область, для которой должна выполняться операция перемещения, используя мышь или касание, и подтверждает свой выбор. Например, когда при отслеживании фиксируется, что пользователь нажал левую кнопку мыши (или палец прикоснулся к экрану дисплея с отображением таблицы), то есть когда произошло касание данной области, место, соответствующее моменту нажатия кнопки мыши (или моменту касания пальцем экрана дисплея с таблицей), используется в качестве начальной точки выбранной области; когда при отслеживании зафиксировано, что пользователь отпустил левую кнопку мыши (или его палец больше не касается экрана дисплея с таблицей), то есть данная область покинута, место, где отпущена левая кнопка мыши (или где палец отошел от экрана дисплея с таблицей; в последующем описании в качестве примера используется операция, выполняемая мышью), используется в качестве конечной точки выбранной области, где выбранная область определяется как область от упомянутой начальной точки до упомянутой конечной точки.
В одном варианте осуществления прием информации о начале контакта, выдаваемой выбранной областью, может включать в себя:
активацию выдачи выбранной областью информации о начале контакта в соответствии с отслеженной второй операцией, относящейся к выбранной области.
На этом этапе, после выбора области пользователем, если в выбранной области нажата и пока еще не отпущена левая кнопка мыши, то есть выбранная область не покинута, это указывает на то, что операция нажатия левой кнопки мыши касается данной области, и в процессе перетаскивания мышью выбранная область перемещается посредством перетаскивания с помощью мыши. После того как данная область удалена, в том месте, где первоначально находилась данная область, остается соответствующая пустая область. Соответствующая пустая область после перемещения упомянутой области устанавливается в качестве области, подлежащей заполнению. То есть то место, где находится область, подлежащая заполнению, совпадает с местом, где находилась упомянутая область перед ее перемещением.
В вариантах осуществления настоящего изобретения маршрут перемещения выбранной области имеет следующие виды: область перемещается в пределах отображаемых границ таблицы; область перемешается за отображаемые границы таблицы; и область перемещается в границах, которые не отображены. Далее подробно описываются эти виды.
Как было описано выше, поскольку каждая область соответствует объекту MQView, в вариантах осуществления настоящего изобретения может быть инициирован системный класс CALayer для изменения местоположения MQView на оси координат, в результате чего реализуется эффект перемещения. Например, если текущее местоположение выбранной области соответствует y1, а время перемещения соответствует t, то тогда данные в выбранной области перемещаются с постоянной скоростью на временном интервале t до конечного местоположения y2 маршрута перемещения. За конкретным описанием процесса инициирования системного класса CALayer, который здесь далее не описывается, можно обратиться к соответствующей технической литературе.
Этап 202: Прием информации об окончании контакта, выдаваемой из выбранной области, получение области, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, и использование полученной области в качестве целевой области.
На этом этапе, если зафиксировано, что пользователь отпустил левую кнопку мыши, то есть покинул выбранную область, активируется операция перемещения с тем, чтобы завершить процесс перемещения данной области.
Областью, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, может быть область, расстояние от которой до текущего местоположения выбранной области является минимальным.
Если местоположение целевой области совпадает с местоположением области, подлежащей заполнению, то активируется перемещение выбранной области в область, подлежащую заполнению. Если местоположение целевой области отличается от местоположения области, подлежащей заполнению, то выполняются следующие этапы.
Этап 203: Перемещение первой промежуточной области, смежной с областью, подлежащей заполнению, в направлении целевой области, в область, подлежащую заполнению, с последующим обновлением области, подлежащей заполнению, на пустую область, отображающейся вместе с первой промежуточной областью.
Этап 204: Повторение этапа 203 до тех пор, пока область, подлежащая заполнению, не станет пустой областью, соответствующей целевой области, и перемещение выбранной области в пустую область, соответствующую целевой области. Предпочтительно, чтобы между этапом 201 и этапом 202 данный способ, кроме того, содержал бы этапы, на которых:
получают в соответствии с заранее установленным временным циклом область, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, например область с минимальным расстоянием, и используют полученную область в качестве второй промежуточной области; и
если местоположение второй промежуточной области отличается от местоположения области, подлежащей заполнению, то активируют перемещение второй промежуточной области в область, подлежащую заполнению, а затем обновляют область, подлежащую заполнению, на пустую область, соответствующую второй промежуточной области.
На этом этапе, если местоположение второй промежуточной области совпадает с местоположением области, подлежащей заполнению, то этап получения, в соответствии с заранее установленным временным циклом, области, расстояние от которой до текущего местоположения выбранной области, удовлетворяет заранее установленному условию, например область с минимальным расстоянием, и использование полученной области в качестве второй промежуточной области, выполняется снова.
В вариантах настоящего изобретения в таблице заранее установлена система координат, и информация о координатах каждой области в системе координат устанавливается в соответствии с межстрочным интервалом каждой строки.
Установленный временной цикл может быть определен согласно действующим требованиям. Информация о местоположении области может быть представлена информацией о местоположении центра этой области.
Информация о местоположении центра области изменяется при перемещении по маршруту. За конкретным описанием процесса получения информации о местоположении центра области, который здесь далее не описывается, можно обратиться к соответствующей технической литературе.
В одном варианте определение области с минимальным расстоянием до текущего местоположения выбранной области включает в себя этапы, на которых:
получают первую область, где находится верхняя граница выбранной области в текущем местоположении, и вторую область, смежную с первой областью в направлении, противоположном направлению, в котором в данный момент перемещается выбранная область; и
вычисляют расстояния, исходя из информации о местоположении центра области, от местоположения центра выбранной области до местоположения центра первой области и местоположения центра второй области, где областью, соответствующей минимальному расстоянию, является область с минимальным расстоянием до текущего местоположения выбранной области.
На этом этапе в процессе перемещения выбранной области область, соответствующая верхней границе, является первой областью, а область, смежная с первой областью в направлении, противоположном направлению перемещения выбранной области, является второй областью. Размеры первой области и второй области совпадают с размером выбранной области. При реальном применении, если выбранной областью является одна строка или один столбец, то первой областью является область, покрывающая одну часть выбранной области, а второй областью является область, покрывающая другую часть выбранной области.
После определения первой области и второй области получают информацию о местоположении центра первой области и информацию о местоположении центра второй области. Положим, что в таблице имеются четыре строки, и межстрочный интервал между ними равен 2; тогда, если информация о местоположении центра строки 1 представляет собой (1, 2), то информация о местоположении центра строки 2 - строки 4 представляет собой соответственно (1, 0), (1, -2) и (1, -4). Поскольку информация о горизонтальном положении каждой строки одинакова, при вычислении можно не учитывать информацию о горизонтальном положении строк.
Предположим, что информация о местоположении центра, полученная в реальном времени, представляет собой (3, 0,5) в соответствии с вышеуказанной информацией о местоположении центров четырех строк; и тогда, если необходимо переместить строку 3, то можно определить, что местоположение центра находится между строкой 1 и строкой 2. Тогда информация о местоположении центра первой области, близкой к упомянутому местоположению центра, будет представлять собой (1, 2), а информация о местоположении центра второй области будет представлять собой (1, 0).
В этом варианте осуществления, хотя согласно вычислениям вторая область (строка 2) является ближайшей к местоположению центра выбранной области, последующие этапы выполняются с использованием второй области (строка 2) в качестве второй промежуточной области. Затем активируется перемещение строки 2 в первоначальное местоположение строки 3, и первоначальная строка 2 становится пустой строкой, область, подлежащая заполнению, обновляется на строку 2, после чего выполняется следующий этап.
Если вторая промежуточная область совпадает со второй промежуточной областью, определенной последний раз, то никаких операций не выполняется, а выполняется следующий этап.
В вариантах осуществления настоящего изобретения выполняется отслеживание информации о начале контакта и информации об окончании контакта. Если получена информация о начале контакта, выдаваемая из выбранной области, то активируется маршрут перемещения выбранной области, и в качестве области, подлежащей заполнению, устанавливается пустая область, соответствующая выбранной области. Если получена информация об окончании контакта, выдаваемая выбранной областью, то получают область с кратчайшим расстоянием до текущего местоположения выбранной области; область с кратчайшим расстоянием, а также область между областью с кратчайшим расстоянием и местоположением выбранной области в момент начала перемещения, перемещаются на расстояние, равное размеру выбранной области в направлении, противоположном направлению, в котором перемещается выбранная область, а выбранная область перемещается в область с кратчайшим расстоянием до текущего местоположения выбранной области. Далее, прежде чем будет покинута выбранная область, может быть реализована операция перемещения области в реальном времени в соответствии с заранее установленным временным циклом.
Далее следует подробное описание настоящего изобретения с использованием ряда конкретных вариантов его осуществления.
На фиг. 3 представлена логическая блок-схема способа реализации для выполнения операции перемещения области в таблице согласно первому варианту осуществления настоящего изобретения. В этом варианте осуществления таблица включает в себя четыре строки, причем строку 3 (область) требуется переместить на строку 2, и при этом данная область перемещается в отображаемых границах таблицы. Как показано на фиг. 3, процесс включает в себя следующие этапы.
Этап 301: Выбор строки 3 в таблице и активация перемещения.
На этом этапе строка 3 является выбранной областью; пустая строка, соответствующая области, где первоначально находится строка 3, то есть пустая строка, оставшаяся после перемещения строки 3, называется областью, подлежащей заполнению; а строку 3 используют в качестве начальной области.
На фиг. 4 представлена диаграмма перемещения строки в отображаемых границах таблицы согласно первому варианту осуществления настоящего изобретения. На состояние 1 по фиг. 4 можно ссылаться как на начало перемещения.
Этап 302: Перемещение строки 3 по маршруту. В это время верхняя граничная линия строки 3 не покрывает центральную линию строки 2.
На этом этапе верхняя граничная линия выбранной области не покрывает центральную линию (которая на чертеже показана пунктирной линией) строки 2, указывая, что областью с минимальным расстоянием до точки, соответствующей информации о местоположении центра выбранной области, все еще является строка 3, где промежуточная область совпадает с полученной последний раз областью, имеющей минимальное расстояние. В указанных случаях пользователь не отпускает кнопку мыши, и далее выполняется этап 303, как показано в состоянии 2 на фиг. 4. Если пользователь в этот момент отпустит мышь, то выполняется этап 304.
Этап 303: Продолжение перемещения строки 3 по маршруту так, чтобы верхняя граничная линия строки 3 покрыла центральную линию строки 2; активация перемещения строки 2 к области, подлежащей заполнению, и обновление области, подлежащей заполнению, как области, где находится первоначальная строка 2.
На этом этапе, когда верхняя граничная линия выбранной области покрывает центральную линию строки 2, указывая, что областью с минимальным расстоянием до точки, соответствующей информации о местоположении центра выбранной области, является строка 2, где область с минимальным расстоянием до выбранной области отличается от области с минимальным расстоянием до выбранной области, полученной последний раз (строка 3), то активируется перемещение области с минимальным расстоянием до выбранной области, к области, подлежащей заполнению, и область, подлежащая заполнению, обновляется в качестве местонахождения области с минимальным расстоянием до выбранной области, как показано в состоянии 3 на фиг. 4.
В вариантах осуществления настоящего изобретения операция заполнения подобна существующей операции удаления или перемещения в таблице. Когда в качестве области, подлежащей заполнению, устанавливается пустая область, соответствующая выбранной области, и когда выбранная область перемещается посредством выполнения операции перетаскивания для покрытия центральной линии смежной области, область, подлежащая заполнению, немедленно заполняется смежной областью, что позволяет пользователю накапливать положительный опыт выполнения подобных операций.
Этап 304: Маршрут перемещения заканчивается, и активируется автоматическое перемещение строки 3 в область, подлежащую заполнению.
На этом этапе маршрут перемещения заканчивается, то есть принимается информация об окончании контакта, выдаваемая из выбранной области; верхняя граничная линия выбранной области покрывает центральную линию строки 2, указывая, что областью с минимальным расстоянием до точки, соответствующей информации о местоположении центра выбранной области, все еще является строка 2, где промежуточная область совпадает с полученной последний раз областью, имеющей минимальное расстояние (на этапе 303); и пользователь в этот момент отпускает кнопку мыши, отпуская тем самым выбранную область, активируется перемещение выбранной области к обновленной области, подлежащее заполнению, то есть к строке 2, а затем процесс заканчивается в состоянии 4, как показано на фиг. 4.
На фиг. 5 представлена логическая блок-схема способа выполнения операций перемещения области в таблице согласно второму варианту осуществления настоящего изобретения. В этом варианте осуществления таблица включает в себя четыре строки, где строку 3 (область) необходимо перемесить в строку 2 (область), причем указанная область перемещается за отображаемые границы таблицы. Как показано на фиг. 5, процесс включает в себя следующие этапы.
Этап 501: Выбор строки 3 в таблице и активация перемещения.
На фиг. 6 представлена диаграмма перемещения строки за отображаемые границы таблицы согласно второму варианту осуществления настоящего изобретения. На состояние 1 на фиг. 6 можно ссылаться как на начало перемещения.
Этап 502: Перемещение выбранной области по маршруту за рамку таблицы. В это время выбранная область не покрывает центральную линию строки 2.
На этом этапе перемещение выбранной области характеризуется состоянием 2 на фиг. 6.
Этап 503: Продолжение перемещения выбранной области по маршруту в рамке таблицы так, что выбранная область покрывает центральную линию строки 2, активация перемещения строки 2 в область, подлежащую заполнению, и обновление области, подлежащей заполнению, как первоначального нахождения строки 2.
На этом этапе перемещение выбранной области характеризуется состоянием 3 на фиг. 6.
Этап 504: Маршрут перемещения заканчивается и активируется перемещение выбранной области в область, подлежащую заполнению.
На этом этапе перемещение выбранной области можно охарактеризовать состоянием 4 на фиг. 6.
В реальном приложении некоторые табличные рамки содержат данные более чем на одной странице, а некоторые строки находятся в невидимой части, то есть эти строки скрыты, и тогда процесс перемещения строки в место, которое не отображено, осуществляется следующим образом.
На фиг. 7 представлена логическая блок-схема способа реализации для выполнения операции перемещения в отношении области в таблице согласно третьему варианту осуществления настоящего изобретения. В этом варианте осуществления таблица включает в себя четыре строки, причем строку 3 (выбранная область) необходимо переместить в строку 1 (область), и при этом выбранная область перемещается в таблице в границах, которые не отображаются. Как показано на фиг. 7, процесс включает в себя следующие этапы.
Этап 701: Выбор строки 3 в таблице и активация перемещения.
На этом этапе предполагается, что табличная рамка содержит всего четыре строки; однако возможно отображение только трех строк, и строка 1 находится в неотображаемой области.
На фиг. 8 представлена схема перемещения строки таблицы в неотображаемых границах согласно третьему варианту настоящего изобретения. Строка, находящаяся в области, которая не может быть отображена, представлена в виде строки, расположенной в рамке, ограниченной пунктирными линиями. Активацию перемещения можно охарактеризовать состоянием 1, показанным на фиг. 8.
Этап 702: Перемещение выбранной области по маршруту в пределах рамки таблицы так, что выбранная область покрывает центральную линию строки 2, активация перемещения строки 2 в область, подлежащую заполнению, и обновление указанной области, подлежащей заполнению, как области первоначального нахождения строки 2.
На этом этапе перемещение выбранной области характеризуется состоянием 2 на фиг. 8.
Этап 703: Продолжение перемещения выбранной области по маршруту так, что выбранная область покрывает верхнюю рамку таблицы. В указанных случаях, активируется автоматическое прокручивание строк таблицы в направлении, противоположном маршруту, при этом строка 1 начинает прокручиваться в направлении, противоположном маршруту.
На этом этапе перемещение выбранной области может характеризоваться состоянием 3 на фиг. 8.
Этап 704: Сохранение маршрута без изменений, где строка 1 продолжает прокручиваться в направлении, противоположном маршруту, а когда выбранная область покрывает центральную линию строки 1, активируется перемещение строки 1 в область, подлежащую заполнению, и обновление указанной области, подлежащей заполнению, как области первоначального нахождения строки 1.
На этом этапе перемещение выбранной области можно охарактеризовать состоянием 4 на фиг. 8.
Этап 705: Маршрут перемещения заканчивается, и выбранная область автоматически перемещается в область, подлежащую заполнению.
На этом этапе перемещение выбранной области можно охарактеризовать состоянием 4 на фиг. 8.
В соответствии с приведенным выше описанием, в способе реализации для выполнения операции перемещения области в таблице согласно вариантам осуществления настоящего изобретения, после выбора области, подлежащей перемещению, операция перемещения привязывается к выбранной области; активируется маршрут перемещения области; и в качестве области, подлежащей заполнению, устанавливается пустая область, соответствующая выбранной области; после того как выбранная область покроет больше половины указанной области, активируется перемещение покрытой области в область, подлежащую заполнению, и обновление указанной области, подлежащей заполнению, в качестве пустой области, соответствующей покрытой области; когда при отслеживании фиксируется, что выбранная область отправлена, активируется перемещение выбранной области в обновленную область, подлежащую заполнению. Таким образом, перемещение области реализуется путем перетаскивания, что упрощает процесс выполнения операции, сокращает время, необходимое для перемещения, повышает эффективность перемещения и позволяет обеспечить наглядный и удобный для пользователя операционный режим, что значительно ускоряет накопление положительного эксплуатационного опыта пользователей.
На фиг. 9 показана структурная схема устройства реализации для выполнения операции перемещения области в таблице согласно варианту осуществления настоящего изобретения. Как показано на фиг. 9, устройство включает в себя модуль отслеживания, модуль обработки перемещения области и модуль перемещения области, где
модуль отслеживания сконфигурирован принимать информацию о начале контакта, выдаваемую из выбранной области, активировать маршрут перемещения выбранной области и устанавливать пустую область, соответствующую выбранной области, в качестве области, подлежащей заполнению;
модуль обработки перемещения области сконфигурирован принимать информацию об окончании контакта, выдаваемую выбранной областью, получать область, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, например область с минимальным расстоянием, использовать полученную область в качестве целевой области и, если местоположение целевой области отличается от местоположения области, подлежащей заполнению, то выдавать активирующую информацию в модуль перемещения области; и
модуль перемещения области сконфигурирован принимать активирующую информацию, активировать перемещение первой промежуточной области, смежной с областью, подлежащей заполнению, в направлении целевой области, в область, подлежащую заполнению, и выполнять последующее обновление области, подлежащей заполнению, на пустую область, соответствующую первой промежуточной области; повторять указанную операцию до тех пор, пока обновленная область, подлежащая заполнению, не окажется пустой областью, соответствующей целевой области, и активировать перемещение выбранной области в эту пустую область, соответствующую целевой области.
Устройство может, кроме того, включать в себя:
модуль промежуточной обработки перемещения области, сконфигурированный получать, после приема информации о начале контакта, выдаваемой из выбранной области, и перед приемом информации об окончании контакта, выдаваемой из выбранной области, область, расстояние от которой до текущего местоположения выбранной области удовлетворяет заранее установленному условию, например область с минимальным расстоянием, в соответствии с заранее установленным временным циклом, и использовать данную область в качестве второй промежуточной области; если местоположение второй промежуточной области отличается от местоположения области, подлежащей заполнению, то активировать перемещение второй промежуточной области в область, подлежащую заполнению, и выполнять последующее обновление области, подлежащей заполнению, на пустую область, соответствующую второй промежуточной области.
Предпочтительно, чтобы модуль промежуточной обработки перемещения области включал в себя блок получения информации о местоположении области, блок получения области, блок сопоставления областей и блок обработки области (на данной фигуре не показаны), где
блок получения информации о местоположении области сконфигурирован получать информацию о местоположении перемещенной области согласно заранее установленному временному циклу;
блок получения области сконфигурирован получать область с минимальным расстоянием до точки, соответствующей информации о местоположении в блоке получения информации о местоположении области в соответствии с заранее установленной информацией о местоположении областей, и использовать эту определенную область в качестве второй промежуточной области;
блок сопоставления областей сконфигурирован определять, совпадает ли вторая промежуточная область с областью, подлежащей заполнению; если нет, то выдавать активирующую информацию в блок обработки области, а если да, то выдавать уведомляющую информацию в блок получения информации о местоположении в области так, что блок получения информации о местоположении в области выполняет периодический процесс получения; и
блок обработки области сконфигурирован принимать активирующую информацию, перемещать вторую промежуточную область в область, подлежащую заполнению, и выполнять последующее обновление области, подлежащей заполнению, на пустую область, соответствующую второй промежуточной области.
Способ согласно настоящему изобретению может быть воплощен в виде компьютерной программы, сохраненной на машинно-считываемом носителе, таком как CD-ROM. Процессор сконфигурирован для исполнения команд, хранящихся на машинно-считываемом носителе, и сконфигурирован для выполнения различных вариантов способа реализации для выполнения операции перемещения области в таблице.
Все вышеописанное представляет собой просто предпочтительные варианты осуществления настоящего изобретения. Однако объем настоящего изобретения не ограничивается этими вариантами. Все модификации, эквивалентные замены и улучшения, выполненные без отклонения от существа и принципов настоящего изобретения, должны трактоваться как подпадающие под рамки его объема.