int main(int argc, char *argv[]) { QApplication a(argc, argv); QTextCodec::setCodecForTr(QTextCodec::codecForName("utf-8"));//设置编码以支持中文格式 MyInputPanelContext *ic = new MyInputPanelContext; a.setInputContext(ic); top w; w.setGeometry(0,0,1024,768); QLineEdit pp(&w); EditBt ed(&w); ed.SetItemName(QObject::tr("分频器")); ed.SetUnitName("(r/min)"); ed.SetValue(89.99); ed.move(800,100); EditBt ed1(&w); ed1.SetItemName(QObject::tr("分频器")); ed1.SetUnitName("(r/min)"); ed1.SetValue(89.99); ed1.move(400,600); EditBt ed2(&w); ed2.SetItemName(QObject::tr("分频器")); ed2.SetUnitName("(r/min)"); ed2.SetValue(89.99); ed2.move(400,100); EditBt ed3(&w); ed3.SetItemName(QObject::tr("分频器")); ed3.SetUnitName("(r/min)"); ed3.SetValue(89.99); ed3.move(50,650); w.show(); return a.exec(); }
// ***************************************************************************** // Main int main(int argc, char* const argv[]) { try { if (argc != 2) { std::cout << "Usage: " << argv[0] << " file\n"; return 1; } std::string file(argv[1]); Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(file); assert (image.get() != 0); image->readMetadata(); Exiv2::ExifData &ed = image->exifData(); if (ed.empty()) { std::string error = file + ": No Exif data found in the file"; throw Exiv2::Error(1, error); } std::cout << "Copy construction, non-intrusive changes\n"; Exiv2::ExifData ed1(ed); ed1["Exif.Image.DateTime"] = "Sunday, 11am"; ed1["Exif.Image.Orientation"] = uint16_t(2); ed1["Exif.Photo.DateTimeOriginal"] = "Sunday, 11am"; ed1["Exif.Photo.MeteringMode"] = uint16_t(1); ed1["Exif.Iop.InteroperabilityIndex"] = "123"; // ed1["Exif.Thumbnail.Orientation"] = uint16_t(2); write(file, ed1); print(file); std::cout << "----------------------------------------------\n"; std::cout << "Copy construction, intrusive changes\n"; Exiv2::ExifData ed2(ed); ed2["Exif.Image.DateTime"] = "Sunday, 11am and ten minutes"; ed2["Exif.Image.Orientation"] = "2 3 4 5"; ed2["Exif.Photo.DateTimeOriginal"] = "Sunday, 11am and ten minutes"; ed2["Exif.Photo.MeteringMode"] = "1 2 3 4 5 6"; ed2["Exif.Iop.InteroperabilityIndex"] = "1234"; ed2["Exif.Thumbnail.Orientation"] = "2 3 4 5 6"; write(file, ed2); print(file); std::cout << "----------------------------------------------\n"; std::cout << "Assignment, non-intrusive changes\n"; Exiv2::ExifData ed3; ed3["Exif.Iop.InteroperabilityVersion"] = "Test 6 Iop tag"; ed3["Exif.Thumbnail.Artist"] = "Test 6 Ifd1 tag"; ed3 = ed; ed3["Exif.Image.DateTime"] = "Sunday, 11am"; ed3["Exif.Image.Orientation"] = uint16_t(2); ed3["Exif.Photo.DateTimeOriginal"] = "Sunday, 11am"; ed3["Exif.Photo.MeteringMode"] = uint16_t(1); ed3["Exif.Iop.InteroperabilityIndex"] = "123"; ed3["Exif.Thumbnail.Orientation"] = uint16_t(2); write(file, ed3); print(file); std::cout << "----------------------------------------------\n"; std::cout << "Assignment, intrusive changes\n"; Exiv2::ExifData ed4; ed4["Exif.Iop.InteroperabilityVersion"] = "Test 6 Iop tag"; ed4["Exif.Thumbnail.Artist"] = "Test 6 Ifd1 tag"; ed4 = ed; ed4["Exif.Image.DateTime"] = "Sunday, 11am and ten minutes"; ed4["Exif.Image.Orientation"] = "2 3 4 5"; ed4["Exif.Photo.DateTimeOriginal"] = "Sunday, 11am and ten minutes"; ed4["Exif.Photo.MeteringMode"] = uint16_t(1); ed4["Exif.Iop.InteroperabilityIndex"] = "123"; ed4["Exif.Thumbnail.Orientation"] = uint16_t(2); write(file, ed4); print(file); return 0; } catch (Exiv2::AnyError& e) { std::cout << "Caught Exiv2 exception '" << e << "'\n"; return -1; } }