Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
Rocky |
26.2.2010, 0:44
Сообщение
#1
|
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7
|
Всем привет! Вот решил написать перекодировщик файлов... Достало меня при перетаскивании исходников из винды в линукс в блокноте менять кодировки вручную... Вроде уже почти написал, хотел тут выложить где-нить, мало ли кому пригодится.. но нашел багу... Вобщем, есть 2 QListWidget... Запретил им drag&drop (предварительно поставив им icon view). Безтолку, все равно могу мышкой элементы перетягивать. Ладно думаю, раз запретить нельзя, пусть хоть корректно перетаскивание работает... Унаследовался, попробовал переопределить dropMimeData - ни фига она не вызывается... Т.е. перетаскиваю нормально - а сюда не попадаю.. Задача - нужно как-то запретить повторение элементов (айтемов QListWidget) с одинаковыми именами... Погуглил - вроде как баг это.. Но у нокии написано closed.
Попробовал так. В классе-родителе этих 2- QListWidget: На int z = 0; поставил брэйкпоинт... Перетаскиваю туда-сюда, тоже не попадаю.... Как-нить можно еще отловить это перетаскивание? Я уже подумываю отказатся от QListWidget тогда..... ( Спасибо!) |
|
|
|
|
Litkevich Yuriy |
26.2.2010, 4:59
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(Rocky @ 26.2.2010, 3:44) Link На int z = 0; поставил брэйкпоинт... Перетаскиваю туда-сюда, тоже не попадаю.... скорее всего компиллер его выкинул, т.к. он нигде не используется. Попробуй туда qDedug воткнуть.
|
|
|
|
|
Rocky |
26.2.2010, 8:11
Сообщение
#3
|
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7
|
Неа, не выкинул. Вот если взять мышкой айтем из 1-го виджета и перенести на 2-й, то я не проваливаюсь про брейку сюда... А вот если его захватить и просто тупо медленно перетащить через любой другой виджет, хоть даже это само диалоговое окно - то брэйк срабатывает.
Вобщем, какой-то косяк... Я вчера перед сном подумал, что наверное через QListView сделаю... Вроде как там тоже можно иконки айтемам сделать, надеюсь там таких проблем не будет.. UPD Ну да, баг Link Сообщение отредактировал Rocky - 26.2.2010, 9:10 |
|
|
|
|
Litkevich Yuriy |
26.2.2010, 10:59
Сообщение
#4
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(Rocky @ 26.2.2010, 11:11) Link Ну да, баг чёт не понятный какой-то баг:Отрапортовано - 21 февраля 2008 г. - на версии 4.3.3 (!) Закрыт - 23 ноября 2009 г. - для некого будущего выпуска С пометкой: Out of scope, а не Done или Rejected Rocky, у тебя версия Qt какая? |
|
|
|
|
Rocky |
26.2.2010, 18:24
Сообщение
#5
|
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7
|
У меня 4.6.1..
Но я решил не париться, и сделал все через QListView. Заодно с моделями вроде-как разобрался ) |
|
|
|
|
SABROG |
26.2.2010, 22:06
Сообщение
#6
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34
|
Цитата(Rocky @ 26.2.2010, 0:44) Link Достало меня при перетаскивании исходников из винды в линукс в блокноте менять кодировки вручную... Поэтому тролли и пишут в Code Convention, что все исходники должны быть в кодировке ASCII, коды символов до 127, выше 127 идут русские буквы например, так что комментарии тоже на английском должны быть, и естественно интерфейс изначально надо писать на английском, имена кнопочек и прочее. А если уж приперло на русском, то текст должен быть в таком виде:
|
|
|
|
|
Rocky |
26.2.2010, 22:11
Сообщение
#7
|
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7
|
Цитата(SABROG @ 26.2.2010, 22:06) Link QString = "\320\237\321\200\320\270\320\262\320\265\321\202, \320\274\320\270\321\200 UTF-8"; Ага и читать его также ))) Ну uic таким и создает русский текст как я понимаю. Кстати по-поводу ASCII тоже вопрос. В линуксе стоит Qt Creator. Так вот некоторые исходные файлы (которые в кодировке ASCII) он нормально открывает.. А некоторым просит вручную выбрать кодировку.. Странно как-то. Но я все в utf-8 перевел (потому что вся система в utf-8 ), так-что щас все ок вроде как. А под виндой 2008-я студия utf-8 тож нормально воспринимает. Сообщение отредактировал Rocky - 26.2.2010, 22:11 |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 25.12.2025, 0:59 |