Единственное, что даже близко подходит, это псевдокласс :contains
в CSS3, но он выбирает только текстовый контент, а не теги или элементы, так что вам не повезло.
Более простой способ выбрать родителя с конкретными детьми в jQuery можно записать в виде (с :has()
):
$('#parent:has(#child)');
Окончательный способ сделать то, что Ойсин демонстрирует в этом отличном сообщении в блоге :
PS> $acceleratorsType = [type]::gettype("System.Management.Automation.TypeAccelerators")
PS> $acceleratorsType
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
False False TypeAccelerators System.Object
PS> $acceleratorsType::Add("accelerators", $acceleratorsType)
PS> [accelerators]::Get
Key Value
--- -----
int System.Int32
...
Обратите внимание, что вам нужно добавить новый ускоритель «ускорители» в словарь, поскольку тип TypeAccelerators не является общедоступным. Удивительно, что вы можете делать с .NET Reflector, и много свободного времени. :-) Ты качаешь Ойсин!
потеряйте removeColumn
и вместо него вызовите tableView-> setColumnHidden (0, true)
. Таким образом, идентификаторы скрыты, и все работает.
Итак, я думаю, мы можем подтвердить наличие ошибки в документации и открыть проблему по ней в трекере Qt, чтобы ее можно было исправить в следующем раунде документации, верно?
Похоже, причина этого была в строке
sqlmodel->removeColumn(0);
После комментариев все работает отлично. Таким образом, мне придется найти другой способ не отображать идентификаторы в таблице; -)
EDIT Я сказал «кажется», потому что в примере из «Основы разработки Qt» Йохан Телин также удалил первый столбец. Так что было бы неплохо, если бы кто-то еще попробовал это и сообщил о результатах.
Я использую Qt 4.6.1 в PyQt, но проблема все еще существует. Удаление removeColumn (0) решает проблему.