Wiki

Qt статьи

Совместный доступ к данным класса

Jasmin Blanchette (перевод Andi Peredri)

Совместный доступ к данным, или копирование при записи (copy on write), широко используется в Qt, сочетая эффективность указателей с простотой и удобством обычных переменных. В этой статье рассказывается, как создавать свои классы с общими данными, используя технику d-указателей и счетчики экземпляров (reference counting). Этот материал может быть полезен широкому кругу читателей, так как эти технические приемы являются достаточно общими и могут найти широкое применение.

Ранние "сюрпризы"

перевод Racheengel

Qt имеет очень мощную и гибкую систему событий. В этой статье мы используем ее для скрытия "сюрприза" (ориг. "Easter egg" - досл. "Пасхальное яйцо") в приложении - слишком поздно для Пасхи в этом году, но вполне нормально для следующего.

Сортировка QListViews

Andy Shaw (перевод Racheengel)

Компонент QListView обеспечивает отображение данных в виде списков и "деревьев". Класс поддерживает независимую от локали юникодовую сортировку по любому столбцу (либо ее отсутствие). Часто бывает необходимым реализовать более сложный метод сортировки, чем стандартный лексикографический. В данной статье показано, как это можно сделать.

Причудливый QRegExp

by Jasmin Blanchette

C++ programmers can use Perl-style regular expressions with Qt 3.0's completely rewritten QRegExp class. We present some of the practicalities of using regular expressions for parsing, validation, and filtering. We also look at how to optimize regular expressions, and finish off with some weird trivia.

Злоупотребление QMap

(перевод Racheengel)

Класс QMap<Key, Value> сохраняет пары (ключ, значение), где каждый ключ ассоциирован с отдельным значением. В данной статье представлен "грязный и быстрый" трюк, позволяющий связывать ключи с несколькими значениями.

Снова о Gtkmm и Qt

Автор: Guillaume Laurent
Перевод: AnDi Peredri

И давайте надеяться, в последний раз.

В этом интервью Murray Cumming, в настоящее время являющийся разработчиком библиотеки Gtkmm ( ранее известной как Gtk-- ), рассказывает о причинах моего ухода из проекта Gtkmm и о преимуществах Gtkmm в сравнении с Qt. Так как я в значительной степени не согласен с тем, что он говорит, считаю необходимым ответить.

От GTK к PyQt

Автор: Philippe Fremy
Перевод: Andi Peredri

Введение


Все началось с того, что я захотел написать игру Klotski. Однако в сети я нашел Gnotski и решил провести испытание: сколько уйдет времени на то, чтобы перенести программу с GTK на Qt, и как трудно это сделать? В конечном счете, я нашел это занимательным и решил сделать несколько вариантов программы, чтобы проанализировать каждый инструментарий.

Расширенные диалоги

Автор: Reginald Stadlbauer
Перевод: Andi Peredri

Неофициальный перевод статьи Extension Dialogs выполнен с любезного разрешения Trolltech.

Расширенный диалог - это диалоговое окно, имеющее два различных интерфейсных вида: 'простой' и более крупный 'расширенный'. Расширенные диалоги позволяют скрыть многочисленные опции от неквалифицированных и небрежных пользователей и, в то же время, не ограничивать в возможностях настройки опытных пользователей. Такие диалоги можно легко создавать с помощью Qt и Qt Designer.

Бинарная совместимость в C++

Автор: Matthias Ettrich
Перевод: Andi Peredri

Определение

Библиотека является бинарно совместимой, если программа, собранная с предыдущей версией библиотеки, может работать с ее новой версией без перекомпиляции.

Масштабирование QCanvasItem-объектов

Автор: Andi Peredri

Довольно часто при работе с классом QCanvas требуется обеспечить индивидуальное ручное масштабирование элементов QCanvasItem. В этой статье показано, как реализуется выбор, перемещение и масштабирование элементов QCanvasItem на примере небольшой демонстрационной программы.

RSS-материал