Archive

Posts Tagged ‘qt c++ sql postgres’

Por onde andas skhaz?

Depois de um bom tempo sem postar, devido há inumeras coisas, como mudança de emprego, escolher um toolkit para criação de ‘GUI’s e aprende-lo, o fim de um namoro de 3 anos, e muita correria… enfim o bom filho a casa retorna.

A boa noticia é que aprendi muitas coisas novas (sem maldade xD) como as bibliotecas Qt, phonon, Webkit, e aprendi mais sobre as que eu já sabia (boost e stl), expressões regulares e até uma linguagem nova chamada Ruby

Eu sempre achei a idea de usar combobox, checkbox, etc como filtro uma idea complicada, ter que ficar marcando e depois clicar em filtrar, entao pensei em algo assim, basta voce digitar qualquer atributo do material que já vinha tudo que for relevante, por exemplo “AL TR”, já retorna todos os alumunios que são trifilados. No video da para se ter uma idea do que eu escrevi (claro que não é nenhum google, é bem simples)

E aqui o codigo responsável pela busca

18
19
20
21
22
23
24
25
26
27
28
29
void ItemView::filterChanged(const QString& text)
{
	QString filter, query;
	QStringList list = text.split(" ", QString::SkipEmptyParts);
 
	for (int i = 0; i < list.size(); ++i) {
		filter.append(QString(" %1 nome ILIKE '\%%2\%'").arg(
			list.size() > 1 && i != 0 ? " AND " : " ").arg(list.at(i)));
	}
 
	model->setFilter(filter);
}

Onde model é um ponteiro do tipo QSqlTableModel, e o metodo setFilter nada mais é do que a inserção da clausa WHERE

Se voce quer aprender mais como a Qt implementa o padrão de projeto Model-View-Controller leia aqui

É isso ae, espero que gostem, qualquer duvida, critica e/ou sujestões já sabem

C++, Qt