Я пытаюсь сделать немного C++ текстовый редактор с использованием Qt. Когда я нажимаю клавишу "tab"
на моей клавиатуре в редакторе, она отделяет линию намного больше, чем необходимо. Я хотел бы, чтобы код отступал примерно на 3 пробела, а не на 11 пробелов. Есть ли способ изменить функцию клавиши табуляции? Благодарю.QTextEdit Уменьшение Отступ «tab» Key
2
A
ответ
3
Чтобы изменить ширину TAB (ASCII символ 9), вы можете использовать tabStopWidth
свойство, которое существует как для QTextEdit
и QPlainTextEdit
(doc link). Он принимает ширину табуляции в пикселях. Обратите внимание, что TAB не имеет фиксированную ширину, а не движется вперед к следующему TAB остановить, которые находятся в интервалах пикселей, определенных этим свойством, начиная с левого края.
Если вы хотите ширину TAB зависит от шрифта, вы можете использовать QFontMetrics класс, чтобы получить ширину пикселя для некоторого шрифта и Характерный код:
// this object is QTextEdit or QPlainTextEdit or a subclass
int fontWidth = QFontMetrics(this->currentCharFormat().font()).averageCharWidth();
this->setTabStopWidth(3 * fontWidth);
Смежные вопросы
- 1. using tab key as3
- 2. EmbeddedWB TAB key
- 3. Tab-Key блоков Метасимвол (^)
- 4. WPF Tab Key Navigation
- 5. TAB Key in Python
- 6. Tab и Shift-Tab интеллектуальный отступ по выбранному тексту
- 7. gvim tab key не работает
- 8. map tab key in vim
- 9. Элемент «tab key press order
- 10. WPF Popup tab key ошибка
- 11. Eclipse tab key inserts tags
- 12. Регулярное выражение escaping tab key
- 13. map <S-TAB> to to tab key
- 14. Нажатие Tab в QTextEdit в диалоге - изменение поведения
- 15. Tab Control draw on Enter Key
- 16. Simulate Tab Key Нажмите в iOS SDK
- 17. Emacs global-set-key для C-TAB
- 18. TAB key auto fill in batch file
- 19. TAB Key не работает в NetBeans 8
- 20. Qt Tab Order with Return Key
- 21. JavaScript для обработки Tab Key press
- 22. "Tab" в середине строки. Отступ вместо создания вкладки. (VS 2010)
- 23. QTextEdit foreach
- 24. Поврежденный отступ VIM?
- 25. связывает «отступ к колонку» С-вкладке
- 26. Отступ в HTML
- 27. Проблемы с обработкой события QTextEdit()
- 28. Make + key act like Tab в форме с помощью AngularJS
- 29. Сделать ввода ключа ведут себя, как Tab Key в JTable
- 30. Не удалось захватить ctrl tab key event в chrome
Если нет возможности напрямую настраивать поведение TAB, переопределите 'keyPressEvent' и поймите и обработайте TAB по своему усмотрению. – hyde
Требуется уточнение: хотите ли вы сохранить ключ TAB, вставляя символ TAB (код ASCII 9), и просто измените ширину табуляции? Или вы хотите изменить его так, чтобы клавиша TAB вставляла пробелы? – hyde