qt写配置文件group|谁知道QT中如何进行文件读写操作

|

『壹』 qt编程,如何实现在每次打开程序的时候都可以加载上一次的配置信息,例如第一次打开程序后把几个文件名

在退出程序时,把文件名写入到DB或者文件中,下次再打开程序时,直接读取文件内容并放入qlistwidget中。

『贰』 Qt中的RibbonGroup组中如何实现控件的处置布局

用两个窗口啊,上面一个只是输入命令的,下面一个显示输入命令和返回结果,这样比较容易。如果用一个,就用追加,自定义一个命令提示符,显示命令提示符时才可以输入命令,其他情况时,文本框为只读,当命令执行完,返回时,再显示命令提示符。运行结果也追加到文本中。好像是Append方法,我记得是有追加方法的。

『叁』 QT可以在Designer里添加ActionGroup吗

我都是在代码中添加的,Qt Designer中实在没找到。

QActionGroup*display_mode_action_group_=newQActionGroup(this);display_mode_action_group_->addAction(ui->action_single_mode);display_mode_action_group_->addAction(ui->action_two_mode);display_mode_action_group_->addAction(ui->action_four_mode);

『肆』 qt buttongroup怎么用

用惯了qt3的朋友在使用qt4的时候肯定会有些不适应,包括构建界面,一些类的使用上,都有一些区别,总得来说Qt4在编程方式上设计的更加合理了,因为它把界面代码和操作代码完全的“隔离”开了,这样就避免了我们在后期修改界面然后编译的时候会重写操作代码带来的尴尬局面了。qt4除了在界面设置上做了优化,还对一些类做了精简。比如原来Qt3上面的QButtonGroup类,在qt4的designer上面就没有表现出来。只是保留了原来qt3的ButtonGroup。是不是qt4上面就没有QButtonGroup类了呢,当然不是了。在qt4的assistant上面介绍QButtonGroup时说到:“QButtonGroup provides an abstract Container into which button widgets can be placed. It does not provide a visual representation of this container (see QGroupBox for a container widget), but instead manages the states of each of the buttons in the group”。其中提到QButtonGroup 提供的是一个放置按键控件的虚拟容器,但它不是个可视的容器。意思就是QButtonGroup 在qt4中变成了一个抽象的类。但是还可以像以前那样管理里面的按键。用法如下: 首先就是要先声明一个QButtonGroup类的对象:QButtonGroup *buttonGroup; 接着在初始化或者构造函数里面给这个指针对象分配空间:buttonGroup = new QButtonGroup; 然后就可以用addButton()函数把想要放置的按键添加进去: buttonGroup->addButton( ui.pushButton0, 0 ); buttonGroup->addButton( ui.pushButton1, 1 ); buttonGroup->addButton( ui.pushButton2, 2 ); buttonGroup->addButton( ui.pushButton3, 3 ); buttonGroup->addButton( ui.pushButton4, 4 ); buttonGroup->addButton( ui.pushButton5, 5 ); buttonGroup->addButton( ui.pushButton6, 6 ); buttonGroup->addButton( ui.pushButton7, 7 ); buttonGroup->addButton( ui.pushButton8, 8 ); buttonGroup->addButton( ui.pushButton9, 9 ); 这样就能把想要的按键与它所对应的ID号对应起来了,每一次点击按键时QButtonGroup都会信号buttonClicked (int ID)发射,通过判断ID的槽与其连接,就可以实现按键的判断了。例如: connect( buttonGroup, SIGNAL(buttonClicked (int)), this, SLOT(buttonJudge(int)) );//连接信号和槽最后在槽函数中判断按键就可以了。当然槽函数记得要事先声明。void IPhone::buttonJudge(int buttonID){ if((modeFlag == defaultMode) || (modeFlag == hangupMode) || (modeFlag == inputMode)){ resetFont(1); if(modeFlag != inputMode) ui.lineEdit->clear(); modeFlag = inputMode; switch (buttonID) { case 0: ui.lineEdit->insert("0"); break; case 1: ui.lineEdit->insert("1"); break; case 2: ui.lineEdit->insert("2"); break; case 3: ui.lineEdit->insert("3"); break; case 4: ui.lineEdit->insert("4"); break; case 5: ui.lineEdit->insert("5"); break; case 6: ui.lineEdit->insert("6"); break; case 7: ui.lineEdit->insert("7"); break; case 8: ui.lineEdit->insert("8"); break; case 9: ui.lineEdit->insert("9"); break; case 10: ui.lineEdit->insert("."); break; case 11: ui.lineEdit->insert("#"); break; default: break; }}}这样就能实现简单按键判别了。

『伍』 如何利用VS2010进行QT开发的环境配置

<ImportGroup Label="PropertySheets" /> <PropertyGroup Label="UserMacros" /> <PropertyGroup> <ExecutablePath>D:\WinDDK\7600.16385.1\bin\x86;$(ExecutablePath)</ExecutablePath> </PropertyGroup> <PropertyGroup> <IncludePath>D:\WinDDK\7600.16385.1\inc\api;D:\WinDDK\7600.16385.1\inc\ddk;D:\WinDDK\7600.16385.1\inc\crt;$(IncludePath)</IncludePath> </PropertyGroup> <PropertyGroup> <LibraryPath>D:\WinDDK\7600.16385.1\lib\win7\i386;$(LibraryPath)</LibraryPath> <TargetExt>.sys</TargetExt> <LinkIncremental>false</LinkIncremental> <GenerateManifest>false</GenerateManifest> </PropertyGroup> <ItemDefinitionGroup> <ClCompile> <PreprocessorDefinitions>_X86_;DBG</PreprocessorDefinitions> <CallingConvention>StdCall</CallingConvention> <ExceptionHandling>false</ExceptionHandling> <BasicRuntimeChecks>Default</BasicRuntimeChecks> <BufferSecurityCheck>false</BufferSecurityCheck> <CompileAs>Default</CompileAs> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> </ClCompile> <Link> <AdditionalDependencies>ntoskrnl.lib;wdm.lib;wdmsec.lib;wmilib.lib;ndis.lib;Hal.lib;MSVCRT.LIB;LIBCMT.LIB;%(AdditionalDependencies)</AdditionalDependencies> </Link> <Link> <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries> <EnableUAC>false</EnableUAC> <SubSystem>Native</SubSystem> <EntryPointSymbol>DriverEntry</EntryPointSymbol> <BaseAddress>0x10000</BaseAddress> <RandomizedBaseAddress> </RandomizedBaseAddress> <DataExecutionPrevention> </DataExecutionPrevention> <GenerateDebugInformation>true</GenerateDebugInformation> <Driver>Driver</Driver> </Link> </ItemDefinitionGroup> <ItemGroup /> </Project> 保存文件,关闭VS2010,重新打开VS2010即可。 PS:配置文件生成后,以后新建工程时可以直接使用,在第四部中就不需要新建一个配置文件,直接添加生成的配置文件即可

『陆』 QT 如何用配置文件给QCombobox加选项

逐个值取出 然后addItem 就行了这是读写INI文件的介绍版http://blog.csdn.net/qiurisuixiang/article/details/7760828这事QCombobox的使用权http://blog.csdn.net/ymc0329/article/details/7284498

『柒』 Qt 关于读写配置文件.ini,该如何解决

我写个了程来序,用到了源配置文件来初始化和保存程序中的文本框的信息。在我的电脑可以实现 但是发到不装Qt的电脑上,程序就只可以读取配置文件的数据 , 但是不能把新信息写入。——解决方案————————————————————–解决方案——————————————————–没qt的电脑,需要你把自己exe依赖的qt库都打包放在一起,这样在没qt环境的电脑上才能正常运行。——解决方案——————————————————–

『捌』 qt 怎样将conf配置文件 转json配置文件

在Windows操作系统中,大多把配置文件信息写在注册表当中,或写在*.ini文件中,对于这两种操作都有相应的Windows API函数,在以前的文章中都提及过,这里就不多说了~在Qt中,提供了一个相应的配置文件的类QSetting,使用QSetting类,可以将用户设置以及应用程序的设置轻松存储在磁盘中。QSettings::Format(配置存储格式)分为NativeFormat、IniFormat、InvalidFormat。这里主要讲的是NativeFormat和IniFormat。QSettings::NativeFormat:在Windows中,利用系统注册表来存储;在 Mac OS X中,使用系统的CFPreferences机制来存储(使用Core Foundation Preference API);在其他平台中,设置则存储在文本文件中。QSettings::IniFormat:读写*.ini格式的配置文件,NativeFormat在某些操作系统中的扩展名是*.conf。QSettings::Scope(配置存储范围)分为UserScope、SystemScope。QSettings::UserScope:用户环境,设置在当前用户的特定位置中。QSettings::SystemScope:系统环境,设置在全局型,所有用户均可获得。

『玖』 谁知道QT中如何进行文件读写操作

#include <qfile.h>#include <qtextstream.h>1. 打开文件QFile f( fn );//fn可以是一 个相对路径或绝对路径f.open(IO_);//一般不要IO_ReadWrite,很容易出现赃数据//如果要在文件的后面添加内 容要IO_WriteOnly|IO_Append//如果要清空原来的内容,只要IO_WriteOnly//IO_Translate用来读windows文 件,linux下的回车换行是/n,windows下是/r/n2. 写文件QTextStream s( &f );s<<"Hello,world!!!"<<"/n";3. 读一行文件readLine(),每读一 行自动下移一行atEnd()判断是否到文件末尾4. 关闭文件f.close();5. 对文件的读操 作:QString fileName = QFileDialog::getOpenFileName( QString::null, QString::null, this);QFile f (fileName);f.open(IO_ReadOnly);QTextStream t(&f);MultiLineEdit1->setText( t.read() );f.close();MultiLineEdit1->setAutoUpdate( TRUE );MultiLineEdit1->repaint ();setCaption( fileName );6. 对文件的写操作:QString fileName = QFileDialog::getSaveFileName( QString::null, QString::null, this );QFile f( fileName );f.open (IO_WriteOnly );QTextStream t(&f);t << MultiLineEdit1->text();f.close();

『拾』 如何设置Qt中的build settings

在Windows操作系统中,大多把配置文件信息写在注册表当中,或写在*.ini文件中,对于这两种操作都有相应的Windows API函数,在以前的文章中都提及过,这里就不多说了~在Qt中,提供了一个相应的配置文件的类QSetting,使用QSetting类,可以将用户设置以及应用程序的设置轻松存储在磁盘中。QSettings::Scope(配置存储范围)分为UserScope、SystemScope。QSettings::UserScope:用户环境,设置在当前用户的特定位置中。QSettings::SystemScope:系统环境,设置在全局型,所有用户均可获得。以下是对应QSettings::Format和QSettings::Scope存放的默认路径位置,其中*表示的是对应的程序名称:Platform Format Scope PathWindows NativeFormat UserScope HKEY_CURRENT_USERSoftware*SystemScope HKEY_LOCAL_MACHINESoftware*IniFormat UserScope %APPDATA%*.iniSystemScope %COMMON_APPDATA%*.iniUnix NativeFormat UserScope $HOME/.config/*.confSystemScope /etc/xdg/*.confIniFormat UserScope $HOME/.config/*.iniSystemScope /etc/xdg/*.iniMac OS X NativeFormat UserScope $HOME/Library/Preferences/com.*.plistSystemScope /Library/Preferences/com.*.plistIniFormat UserScope $HOME/.config/*.iniSystemScope /etc/xdg/*.ini在读写时,路径名必须是"/"而不是"\"等。否则不能读写,注意。以Windows XP平台为例,举俩个例子程序~■、读写注册表//Format为QSettings::NativeFormatQSettings settings("HKEY_CURRENT_USER\Software\Microsoft\Office",QSettings::NativeFormat);//设置键值信息settings.setValue("11.0/Outlook/Security/DontTrustInstalledFiles", 0);//获取键值信息int value = settings.value("11.0/Outlook/Security/DontTrustInstalledFiles").toInt();对应的值可是bool,double,QString,QStringList,或者是其他QVariant支持的数据类型,也包括注册过的用户自定义类型。删除设置对应的是settings->remove( const QString & key );■、读取ini配置文件先定义下software.ini文件的格式,比较简单:[bolg]Name = "vic.MINg"//Format为QSettings::IniFormatQSettings *setIni=new QSettings ("software", QSettings::IniFormat); //设置键值信息setIni->beginGroup("bolg"); setIni->setValue("Name", "vic.MINg"); setIni->endGroup(); //获取键值信息setIni->beginGroup("bolg"); QString resault = setIni->value("Name").toString(); setIni->endGroup(); qDebug()<<resault;QSetting的应用并不难,但很有用,一些更细致的操作用法,可以参看帮助文档!可以参照示例:$


赞 (0)