예제 #1
0
AddressBook::AddressBook(QWidget *parent)
    : QMainWindow(parent)
{
    QStringList labels;
    labels << tr("Name") << tr("Address") << tr("Phone Number");

    treeWidget = new QTreeWidget;
    treeWidget->setColumnCount(3);
    treeWidget->setHeaderLabels(labels);
    setCentralWidget(treeWidget);

    createActions();
    createMenus();

    QFile file(QDir::homePath() + "/addressbook.txt");
    if (file.open(QIODevice::ReadOnly)) {
        QTextStream in(&file);
        in.setCodec("UTF-8");

        while (!in.atEnd()) {
            ABItem *entry = new ABItem(treeWidget);
            entry->setContact(in.readLine());
            entry->setAddress(in.readLine());
            entry->setPhoneNumber(in.readLine());
            in.readLine();
        }
    }
}
예제 #2
0
AddressBook::AddressBook(QWidget *parent, const char *name)
    : QMainWindow(parent, name)
{
    setCaption(tr("Address Book"));

    listView = new QListView(this);
    listView->addColumn(tr("Name"));
    listView->addColumn(tr("Address"));
    listView->addColumn(tr("Phone Number"));
    listView->setAllColumnsShowFocus(true);
    listView->setResizeMode(QListView::LastColumn);
    setCentralWidget(listView);

    createActions();
    createMenus();

    QFile file(QDir::homeDirPath() + "/addressbook.txt");
    if (file.open(IO_ReadOnly | IO_Translate)) {
        QTextStream input(&file);
        input.setEncoding(QTextStream::UnicodeUTF8);

        while (!input.eof()) {
            ABItem *entry = new ABItem(listView);
            entry->setContact(input.readLine());
            entry->setAddress(input.readLine());
            entry->setPhoneNumber(input.readLine());
            input.readLine();
        }
    }
}
예제 #3
0
ABItem *AddressBook::createEntry(const QString &contact)
{
    ABItem *item = new ABItem(treeWidget);
    item->setContact(contact);
    return item;
}