My-library.info
Все категории

Основы программирования в Linux - Мэтью Нейл

На электронном книжном портале my-library.info можно читать бесплатно книги онлайн без регистрации, в том числе Основы программирования в Linux - Мэтью Нейл. Жанр: Интернет год 2004. В онлайн доступе вы получите полную версию книги с кратким содержанием для ознакомления, сможете читать аннотацию к книге (предисловие), увидеть рецензии тех, кто произведение уже прочитал и их экспертное мнение о прочитанном.
Кроме того, в библиотеке онлайн my-library.info вы найдете много новинок, которые заслуживают вашего внимания.

Название:
Основы программирования в Linux
Автор
Дата добавления:
17 сентябрь 2020
Количество просмотров:
348
Читать онлайн
Основы программирования в Linux - Мэтью Нейл

Основы программирования в Linux - Мэтью Нейл краткое содержание

Основы программирования в Linux - Мэтью Нейл - описание и краткое содержание, автор Мэтью Нейл, читайте бесплатно онлайн на сайте электронной библиотеки My-Library.Info
В четвертом издании популярного руководства даны основы программирования в операционной системе Linux. Рассмотрены: использование библиотек C/C++ и стан­дартных средств разработки, организация системных вызовов, файловый ввод/вывод, взаимодействие процессов, программирование средствами командной оболочки, создание графических пользовательских интерфейсов с помощью инструментальных средств GTK+ или Qt, применение сокетов и др. Описана компиляция программ, их компоновка c библиотеками и работа с терминальным вводом/выводом. Даны приемы написания приложений в средах GNOME® и KDE®, хранения данных с использованием СУБД MySQL® и отладки программ. Книга хорошо структурирована, что делает обучение легким и быстрым. Для начинающих Linux-программистов

Основы программирования в Linux читать онлайн бесплатно

Основы программирования в Linux - читать книгу онлайн бесплатно, автор Мэтью Нейл

  res1, search_text);

 statusBar()->message(statusBar_text);

 i = 0;

 list->clear();

8. Для каждого

id
извлеките сведения о компакт-диске в виджет
QListView
и информацию обо всех дорожках данного CD:

 while (i < res1) {

  res2 = get_cd(cd_res->cd_id[i], cd);

  cd_item = new QListViewItem(list, cd->title, cd->artist_name,

   cd->catalogue);

  res3 = get_cd_tracks(cd_res->cd_id[i++], &ct);

  j = 0;

  /* Заполните дерево дорожками текущего компакт-диска */

  while (j < res3) {

   sprintf(track_title, " Track %d. ", j+1);

   strcat(track_title, ct.track[j++]);

   new QListViewItem(cd_item, track_title);

  }

 }

}

Основы программирования в Linux - image078.jpg

Рис. 17.13

9. Слот

AddCd
вызывается, когда активизирован пункт меню или кнопка панели инструментов
addcd_action
:

void MainWindow::AddCd()

 AddCdDialog* dialog = new AddCdDialog(this);

 dialog->show();

}

Результат показан на рис. 17.13.

AddCdDialog

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

1. Введите следующий программный код в файл AddCdDialog.h. Имейте в виду, что класс

AddCdDialog
— потомок
KDialogBase
, виджета диалогового окна в среде KDE.

#include <kde/kdialogbase.h>

#include <qlineedit.h>

class AddCdDialog : public KDialogBase {

 Q_OBJECT

public:

 AddCdDialog(QWidget* parent);

private:

 QLineEdit* artist_entry, *title_entry, *catalogue_entry;

public slots:

 void okClicked();

};

2. Далее следует файл AddCdDialog.cpp, в котором в слоте

okClicked
вызывается функция
add_cd
из интерфейса MySQL:

#include "AddCdDialog.h"

#include "app_mysql.h"

#include <qlayout.h>

#include <qlabel.h>

AddCdDialog::AddCdDialog(QWidget* parent)

 : KDialogBase(parent, "AddCD", false, "Add CD",

 KDialogBase::Ok | KDialogBase::Cancel, KDialogBase::Ok, true) {

 QWidget *widget = new QWidget(this);

 setMainWidget(widget);

 QGridLayout *grid = new QGridLayout(widget, 3, 2, 10, 5, "grid");

 grid->addWidget(new QLabel("Artist", widget, "artistlabel"), 0, 0, 0);

 grid->addWidget(new QLabel("Title", widget, "titlelabel"), 1, 0, 0);

 grid->addwidget(new QLabel("Catalogue", widget, "cataloguelabel"), 2, 0, 0);

 artist_entry = new QLineEdit(widget, "artist_entry");

 title_entry = new QLineEdit(widget, "titleentry");

 catalogue_entry = new QLineEdit(widget, "catalogue_entry");

 grid->addWidget(artist_entry, 0, 1, 0);

 grid->addWidget(title_entry, 1, 1, 0);

 grid->addWidget(catalogue_entry, 2, 1, 0);

 connect(this, SIGNAL(okClicked()), this, SLOT(okClicked()));

}

void AddCdDialog::okClicked() {

 char artist[200];

 char title[200];

 char catalogue[200];

 int cd_id = 0;

 strcpy(artist, artist_entry->text());

 strcpy(title, title_entry->text());

 strcpy(catalogue, catalogue_entry->text());

 add_cd(artist, title, catalogue, &cd_id);

}

На рис. 17.14 показано работающее диалоговое окно

AddCdDialog
.

Основы программирования в Linux - image079.jpg

Рис. 17.14 

LogonDialog

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

LogonDialog
. (Да, еще один пример остроумного и образного имени!)

1. Начнем с заголовочного файла. Введите приведенный далее программный код и назовите файл LogonDialog.h. Обратите внимание на то, что для разнообразия этот класс описан в данном случае как потомок класса

QDialog
, а не
KDialogBase
.

#include <qdialog.h>

#include <qlineedit.h>

class LogonDialog : public QDialog {


Мэтью Нейл читать все книги автора по порядку

Мэтью Нейл - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки My-Library.Info.


Основы программирования в Linux отзывы

Отзывы читателей о книге Основы программирования в Linux, автор: Мэтью Нейл. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.