LINUX.ORG.RU

Qt Creator + Qt Designer + Pure C

 , ,


0

2

Возможно ли кодить в Qt Creator на Си, создавая программы с графическим интерфейсом с помощью Qt Designer, при этом не зная C++? Предложения выучить C++ не принимаются, ибо времени совсем мало, хотелось бы освоить этот механизм за неделю.

★★★★★

Предложения выучить C++ не принимаются

И я тебя полностью поддерживаю.

Hertz ★★★★★
()

Если очень надо - можно. Но не желательно.

Первое что приходит на ум - писать логику на С, а потом просто дёргать ее из слотов Qt. То есть вызывать сишные функции из обработчиков, что создаст Qt Creator.

И используя что-то вроде:

extern "C" {
 /* C code */
}

Но вы так себя сильно ограничиваете. У Qt очень хорошая документация, интегрированная с Qt Creator, попробуйте - и, понемногу, дело пойдет.

KennyMinigun ★★★★★
()

На си код тв потратишь куда больше, чем на элементарщину на спп

namezys ★★★★
()
Ответ на: комментарий от KennyMinigun

Выглядеть это будет где-то так:

logic.c

extern "C" { 
   void myMegaFunction(int param) { /* ... */ } 
}

MainWindow.cpp

void MainWindow::on_pushButton1_clicked() { 
   myMegaFunction(ui->spin1->value()); 
}

Ну.. и никто не запрещает собирать статические/разделяемые библиотеки

KennyMinigun ★★★★★
()

Если нужно написать быстро, советую pyQt, оно намного проще, и там не надо городить тонны фигни, как хочешь ты. Если хочешь написать что-то полноценное и действительно нормально работающее - учи плюсы. В крайнем случае, гтк+ твой путь.

По поводу pyQt - цикл очень полезных для освоения статей есть на хабре, гугль в помощь.

Zhbert ★★★★★
()

программы с графическим интерфейсом с помощью Qt Designer, при этом не зная C++?

.ui файлы внутри xml, а не с++

TERRANZ ★★★★
()

Есть еще QML, там можно немного кода поваять на джаваскрипте.

Anomaluridae
()

Вообще, у Qt есть какое-то plain-C API, если уж упарываться. Только вряд ли QtCreator под него код будет генерить.

slapin ★★★★★
()

в принципе можно на C++ и Qt только интерфейс сделать, а всю логику вызывать из сишного кода. Но знать С++ для понимания, что делаешь, весьма желательно

Harald ★★★★★
()
Ответ на: комментарий от slapin

C API было написано для динамических языков. Сейчас я его уже не нашел :( Может уже все выпилили.

slapin ★★★★★
()
Ответ на: комментарий от Harald

в принципе можно на C++ и Qt только интерфейс сделать, а всю логику вызывать из сишного кода. Но знать С++ для понимания, что делаешь, весьма желательно

Вот это именно то, что я хочу. Вот только как хорошо нужно для этого знать C++? Пока что мне нужно написать простенький интерфейс, где будет выводиться график.

eugeno ★★★★★
() автор топика
Ответ на: комментарий от anonymous

GTK + Qt Creator (Why not?) + Glade + Pure C

+1

ТС, на кой черт тебе Qt, если пишешь на сях?
к тому же с графиком все равно запариться придется.

seed_stil ★★
()

если ты знаешь Си, то в чем сложность писать на C++? по факту ты будешь использовать обычные Си конструкции и вообще на 99% обычный Си когда пишешь на Qt... те же операторы, те же функции, те же вызовы функций, те же объявления переменных - не понимаю, в чем сложность?

я даже верю что ты сходу начнешь писать на Java и C# если знаешь Си

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

писать такое говнище, за которое все захотят тебя убить.

А вообще есть книги, которые описывают часть С++, которая найболее активно используется в Qt, а затем описывает само использование Qt.

frozenix ★★★
()
Ответ на: комментарий от frozenix

писать такое говнище, за которое все захотят тебя убить

да, это правда, но челу же срочно надо, лишь бы работало, наверняка какая-то длясебятина :) я его и подбадриваю что дескать знаешь Си - смело пиши на Qt/C++

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

но челу же срочно надо, лишь бы работало, наверняка какая-то длясебятина

Да нет, для себя как раз писал бы на GTK+, а Qt посоветовал научник. Просто мне нужно будет скомпилить проект и в винде, а GTK-шные программы в ней выглядят как… В общем, уступают Qt.

eugeno ★★★★★
() автор топика
Ответ на: комментарий от eugeno

понятно... советую Qt/C++ - уверяю, если человек знает Си, ну какие там проблемы с C++ могут быть? :)

I-Love-Microsoft ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.