精华内容
下载资源
问答
  • 默认Windows记事本的所有功能 将自己的文件类型与应用程序关联 与Windows上下文菜单集成 可定制化的加密选项 在编辑器中检测链接 可定制的界面 拖放支持 随身携带 系统要求 Windows 7 SP1及更高版本 .NET Framework ...
  • 一个小巧,快速的替代微软记事本的软件,界面华丽...特点: --自定义语法高亮, 支持 HTML, XML, CSS, JavaScript, VBScript, ASP, PHP, CSS, Perl/CGI, C/C++, C#, Java, VB, Pascal, Assembler, SQL, Python, NSIS, IN...
        一个小巧,快速的替代微软记事本的软件,界面华丽,功能强大,免安装.我实在找不出微软的记事本还能留下来的理由.特点: --自定义语法高亮, 支持 HTML, XML, CSS, JavaScript, VBScript, ASP, PHP, CSS, Perl/CGI, C/C++, C#, Java, VB, Pascal, Assembler, SQL, Python, NSIS, INI, REG, INF, BAT, DIFF, Ruby 等众多文件.


    --支持 ANSI、Unicode、UTF-8 等编码互换
    --直接查看 NFO 文件
    --可以格式化 C/C++/Java 源代码
    --可以把语法高亮方案导出为 HTML、UBB 代码
    --内置 BAT/C/C++/NSIS 等语言支持
    --可以使用代码页转换来转换诸如 BIG5 码等 ANSI 编码
    --可以设置无限个书签 (9种图标可换) 轻松定位
    --空格, 制表符彩色显示, 并可互相转换
    --可以对任意的文本块进行操作, ALT 键+鼠标
    --对括号 {} [] ()可以高亮配对显示, 方便查看(仅对英文符号有效)
    --支持正则表达式搜索和替换 (Boost) --可以使用半透明模式
    --快速放大、缩小页面, 不用再设定字体大小
    --可以指定 ESC 键最小化 Notepad2 到系统托盘或者关闭 Notepad2

    很牛的记事本,体积不大,源码公开,可以二次开发自己的版本哦。比Windows自带了强多了,还可以方便的写代码,哈哈~~~~
    作者主页、源码下载:http://www.flos-freeware.ch/notepad2.html



    (2007-4-9)

    转载于:https://www.cnblogs.com/qiuyi21/articles/1095247.html

    展开全文
  • 记得Windows 7 beta刚出来的时候记事本终于被更新成office 2007的风格,让我大喜过望。但是等到了RC版又变成老记事本那个死样子,我实在受不了了,如是乎就又想到了xp下我经常使用的Notepad 2。什么是Notepad2:一个...

    记得Windows 7 beta刚出来的时候记事本终于被更新成office 2007的风格,让我大喜过望。但是等到了RC版又变成老记事本那个死样子,我实在受不了了,如是乎就又想到了xp下我经常使用的Notepad 2。

    什么是Notepad2:一个小巧,快速的替代微软记事本的软件,界面华丽,功能强大,免安装.特点: --自定义语法高亮, 支持 HTML, XML, CSS, JavaScript, VBScript, ASP, PHP, CSS, Perl/CGI, C/C++, C#, Java, VB, Pascal, Assembler, SQL, Python, NSIS, INI, REG, INF, BAT, DIFF, Ruby 等众多文件.--支持 ANSI、Unicode、UTF-8 等编码互换 --直接查看 NFO 文件 --可以格式化 C/C++/Java 源代码 --可以把语法高亮方案导出为 HTML、UBB 代码 --内置 BAT/C/C++/NSIS 等语言支持 --可以使用代码页转换来转换诸如 BIG5 码等 ANSI 编码 --可以设置无限个书签 (9种图标可换) 轻松定位 --空格, 制表符彩色显示, 并可互相转换 --可以对任意的文本块进行操作, ALT 键+鼠标 --对括号 {} [] ()可以高亮配对显示, 方便查看(仅对英文符号有效) --支持正则表达式搜索和替换 (Boost) --可以使用半透明模式 --快速放大、缩小页面, 不用再设定字体大小 --可以指定 ESC 键最小化 Notepad2 到系统托盘或者关闭 Notepad2。最后一点,Notepad2支持列模式(转载自PChome,这里可以下载http://download.pchome.net/utility/file/editor/detail-86741-1.html

    下面说说如何在Windows 7下替换

    步骤一:取得文件的管理员权限

    要替换系统文件,首先要能够获得“管理员权限”。有很多种方法,这里提供一个简单的为右键菜单添加取得所有权的菜单。将以下内容另存为文本文件,然后修改该文件的扩展名为.reg ,双击导入注册表即可(系统提示有风险,不用理他)。

    Windows Registry Editor Version 5.00
    [HKEY_CLASSES_ROOT\*\shell\runas]
    @="管理员取得所有权"
    "NoWorkingDirectory"=""
    [HKEY_CLASSES_ROOT\*\shell\runas\command]
    @="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"
    "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"
    [HKEY_CLASSES_ROOT\exefile\shell\runas2]
    @="管理员取得所有权"
    "NoWorkingDirectory"=""
    [HKEY_CLASSES_ROOT\exefile\shell\runas2\command]
    @="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"
    "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

    [HKEY_CLASSES_ROOT\Directory\shell\runas]
    @="管理员取得所有权"
    "NoWorkingDirectory"=""
    [HKEY_CLASSES_ROOT\Directory\shell\runas\command]
    @="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"
    "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"

    步骤二、用Notepad2替换系统自带的记事本

    搜索C:\Windows目录里的“notepad.exe”文件,应该会出来好几个目录都含有这个文件,在我的系统里为C:\Windows\winsxs\x86_microsoft-windows-notepad_31bf3856ad364e35_6.1.7100.0_none_e00d85dcc5158cbc和C:\Windows\winsxs\x86_microsoft-windows-notepadwin_31bf3856ad364e35_6.1.7100.0_none_b3bcc5405022df12两个目录(每个机器和版本的win 7目录名不一样,但都类似这两个),除了这两个很长名字的目录外还有其它包含notepad.exe文件的目录不用管。取得这两个目录的管理员权限(步骤一就干这事的),然后将已下载的notepad2.exe更名为notepad.exe后覆盖这两个目录里对应的文件即可,覆盖完成后立刻生效,打开文本文件发现是不是已经用上Notepad2啦?

    转载于:https://www.cnblogs.com/Fred_Xu/archive/2010/07/30/win7-notepad2.html

    展开全文
  • ★如果你的系统是windows98,那么直接把更名后的Notepad2拷贝到c:\windows和c:\windows\system32目录下替换原有的notepad.exe记事本程序即可! ■关闭系统文件保护的方法: 从注册表中找到HKEY_LOCAL_MACHINE\...
  • 记事本源码java PECOFF4J PE/COFF 4J 是用于可移植可执行文件的 Java 工程库,Windows 使用的格式。 它具有以下特点Windows 可执行文件和 DLL 的解析器。 用于创建和修改可执行文件和 DLL 的汇编程序。 资源目录...
  • xPad 便签记事本

    2006-10-20 17:32:38
    便签式记事本,多页分类记录,随点随用,即关即存,日常功能强大,非常方便,绿色环保,无需安装,解压即用,适用于以电脑为工具的工作者。 软件初衷: 日常在电脑前工作时,经常需要临时记录一些东西,通常会打开一...
  • qt5.5实现 记事本程序

    2019-10-03 22:55:41
    最近由于要做Qt相关的毕业设计课题,以前对Qt完全不了解,对于客户端图形界面程序,也只对Windows下的MFC熟悉, 所以,由于Qt的跨平台特性和相对比较纯的C++的特点,就准备学习一下吧。这两天逛了一下Qt的开发者...

    最近由于要做Qt相关的毕业设计课题,以前对Qt完全不了解,对于客户端图形界面程序,也只对Windows下的MFC熟悉,

    所以,由于Qt的跨平台特性和相对比较纯的C++的特点,就准备学习一下吧。这两天逛了一下Qt的开发者官方网站,和一些国内的论坛,

    看了下基本的知识点,比如信号和槽的机制,界面的布局,就想写个东西,巩固一下。于是参考了官方的文档和代码,纯代码实现了一个简易的记事本程序。

    希望大家参考学习,共同进步。不足之处,还请指出。

    记事本简介:记事本采用代码实现GUI界面,支持,新建,保存,另存为,查找,替换,打印功能。

    开发环境:win7旗舰版 32位 Qt Creator   Qt 5.5

    参考资料:http://www.devbean.net/2012/08/qt-study-road-2-intro

    http://doc.qt.io/qt-5/gettingstartedqt.html

     

     

    界面外观:

    查找功能:

    替换功能:


    打印功能:

    保存等:

     

    关于本屌狮

     

    本程序涉及一个主对话框,一个查找对话框,一个替换对话框,一个打印对话框,一个关于信息对话框,一个打开对话框,一个保存对话框,其他信息提示对话框。

    功能设计:主要涉及对话框的布局,主对话框与查找,替换对话框的交互。当然这是通过信号与槽的机制来实现的。下面看下具体的代码实现。

    主对话框类

     1 #ifndef MAINWINDOW_H
     2 #define MAINWINDOW_H
     3 
     4 #include <QMainWindow>
     5 #include <QMenu>
     6 #include <QMenuBar>
     7 #include <QAction>
     8 #include <QTextEdit>
     9 #include <QIcon>
    10 #include <QFile>
    11 #include <QFileDialog>
    12 #include <QTextStream>
    13 #include <QMessageBox>
    14 #include <QTextDocument>
    15 #include <QTextCursor>
    16 #include <QToolBar>
    17 #include <QtPrintSupport/QPrinter>
    18 #include <QtPrintSupport/QPrintDialog>
    19 #include <QtPrintSupport/QPrintPreviewDialog>
    20 #include <QtPrintSupport/QPageSetupDialog>
    21 
    22 #include <finddialog.h>
    23 
    24 #include <replacedialog.h>
    25 
    26 class MainWindow : public QMainWindow
    27 {
    28     Q_OBJECT
    29 public:
    30     MainWindow(QWidget *parent = 0);
    31     ~MainWindow();
    32 protected:
    33 private slots:
    34     void createMenus();
    35     void createActions();
    36     void newAct();
    37     void openAct();
    38     void saveAct();
    39     void printAct();
    40     void exitAct();
    41     void findAct(QString,bool,bool);
    42     void aboutAct();
    43     void anotherSaveAct();
    44     void showFindDialog();
    45     void showReplaceDialog();
    46     void findReplace(QString,bool);
    47     void replaceCur(QString,QString);
    48     void replaceAll(QString,QString,bool);
    49 
    50 private:
    51     //菜单
    52     bool   find;
    53     QMenu *file_menu;
    54     QMenu *edit_menu;
    55     QMenu *about_menu;
    56     //Action响应file_menu
    57     QAction *new_act;
    58     QAction *open_act;
    59     QAction *save_act;
    60     QAction *another_save_act;
    61     QAction *print_act;
    62     QAction *exit_act;
    63     //Action响应edit_menu
    64     QAction *find_act;
    65     QAction *replace_act;
    66     //Action响应help_menu
    67     QAction *about_act;
    68     //Edit
    69     QTextEdit *mini_text;
    70 
    71     FindDialog *find_dialog;
    72     ReplaceDialog *replace_dialog;
    73     QString cur_file_name;
    74 
    75 };
    76 
    77 #endif // MAINWINDOW_H
      1 #include "mainwindow.h"
      2 MainWindow::MainWindow(QWidget *parent)
      3     : QMainWindow(parent)
      4 {
      5     setWindowTitle(tr("MiniText"));
      6     mini_text = new QTextEdit;
      7     this->setCentralWidget(mini_text);
      8     resize(900,500);
      9     cur_file_name = tr("");
     10 
     11     createActions();
     12     createMenus();
     13 }
     14 
     15 MainWindow::~MainWindow()
     16 {
     17    if(file_menu){
     18        delete file_menu;
     19    }
     20    if(edit_menu){
     21        delete edit_menu;
     22    }
     23    if(about_menu){
     24        delete about_menu;
     25    }
     26    if(new_act){
     27        delete new_act;
     28    }
     29    if(open_act){
     30        delete open_act;
     31    }
     32    if(save_act){
     33        delete save_act;
     34    }
     35    if(print_act){
     36        delete print_act;
     37    }
     38    if(exit_act){
     39        delete exit_act;
     40 
     41    }
     42    if(find_act){
     43        delete find_act;
     44 
     45    }
     46    if(replace_act){
     47        delete replace_act;
     48    }
     49    if(about_act){
     50        delete about_act;
     51    }
     52    if(mini_text){
     53        delete mini_text;
     54    }
     55    if(find_dialog){
     56        delete find_dialog;
     57    }
     58    if(replace_dialog){
     59        delete replace_dialog;
     60    }
     61    if(another_save_act){
     62        delete another_save_act;
     63    }
     64 }
     65 
     66 void MainWindow::createMenus()
     67 {
     68 
     69     file_menu = menuBar()->addMenu(tr("&文件"));
     70     file_menu->setStyleSheet("color:blue");
     71     file_menu->addAction(new_act);
     72     file_menu->addAction(open_act);
     73     file_menu->addAction(save_act);
     74     file_menu->addAction(another_save_act);
     75     file_menu->addAction(print_act);
     76     file_menu->addSeparator();
     77     file_menu->addAction(exit_act);
     78     edit_menu = menuBar()->addMenu(tr("&编辑"));
     79     edit_menu->setStyleSheet("color:blue");
     80     edit_menu->addAction(find_act);
     81     edit_menu->addAction(replace_act);
     82     about_menu = menuBar()->addMenu(tr("&关于"));
     83     about_menu->setStyleSheet("color:blue");
     84     about_menu->addAction(about_act);
     85     QToolBar *tool_bar = addToolBar(tr("file"));
     86     tool_bar->addAction(new_act);
     87     tool_bar->addAction(open_act);
     88     tool_bar->addAction(save_act);
     89     tool_bar->addAction(another_save_act);
     90     tool_bar->addAction(print_act);
     91     tool_bar->addAction(find_act);
     92     tool_bar->addAction(replace_act);
     93     tool_bar->addAction(about_act);
     94     tool_bar->addAction(exit_act);
     95 
     96 }
     97 
     98 void MainWindow::createActions()
     99 {
    100     find = false;
    101     find_dialog = new FindDialog(this);
    102     replace_dialog = new ReplaceDialog(this);
    103     //Action响应file_menu
    104     new_act = new QAction(QIcon(tr(":/images/new")),tr("&新建"),this);
    105     new_act->setShortcut(QKeySequence::New);
    106 
    107     open_act = new QAction(QIcon(tr(":/images/open")),tr("&打开"),this);
    108     open_act->setShortcut(QKeySequence::Open);
    109 
    110     save_act = new QAction(QIcon(tr(":/images/save")),tr("&保存"),this);
    111     save_act->setShortcut(QKeySequence::Save);
    112 
    113     another_save_act = new QAction(QIcon(tr(":/images/another_save")),tr("另存为"),this);
    114 
    115     print_act = new QAction(QIcon(tr(":/images/print")),tr("&打印"),this);
    116     print_act->setShortcut(QKeySequence::Print);
    117 
    118     exit_act = new QAction(QIcon(tr(":/images/exit")),tr("&退出"),this);
    119     exit_act->setShortcut(QKeySequence::Quit);
    120 
    121     find_act = new QAction(QIcon(tr(":/images/find")),tr("&查找"),this);
    122     find_act->setShortcut(QKeySequence::Find);
    123 
    124     replace_act = new QAction(QIcon(tr(":/images/replace")),tr("&替换"),this);
    125     replace_act->setShortcut(QKeySequence::Replace);
    126 
    127     about_act = new QAction(QIcon(tr(":/images/about")),tr("关于"),this);
    128 
    129     connect(new_act,SIGNAL(triggered()),this,SLOT(newAct()));
    130     connect(open_act,SIGNAL(triggered()),this,SLOT(openAct()));
    131     connect(save_act,SIGNAL(triggered()),this,SLOT(saveAct()));
    132     connect(print_act,SIGNAL(triggered()),this,SLOT(printAct()));
    133     connect(another_save_act,SIGNAL(triggered()),this,SLOT(anotherSaveAct()));
    134     connect(exit_act,SIGNAL(triggered()),this,SLOT(exitAct()));
    135     connect(find_act,SIGNAL(triggered()),this,SLOT(showFindDialog()));
    136     connect(replace_act,SIGNAL(triggered()),this,SLOT(showReplaceDialog()));
    137     connect(about_act,SIGNAL(triggered()),this,SLOT(aboutAct()));
    138 
    139     connect(find_dialog,SIGNAL(findTextDataButtonClickedSignal(QString,bool,bool)),
    140             this,SLOT(findAct(QString,bool,bool)));
    141     connect(replace_dialog,SIGNAL(findReplaceStr(QString,bool)),
    142             this,SLOT(findReplace(QString,bool)));
    143     connect(replace_dialog,SIGNAL(replaceCurOneStr(QString,QString)),
    144             this,SLOT(replaceCur(QString,QString)));
    145     connect(replace_dialog,SIGNAL(replaceAllStr(QString,QString,bool)),
    146             this,SLOT(replaceAll(QString,QString,bool)));
    147 }
    148 
    149 void MainWindow::newAct()
    150 {
    151     if (mini_text->document()->isModified())
    152     {
    153         QMessageBox::StandardButton button = QMessageBox::information(this,
    154                                           "尚未保存", "是否要保存?",QMessageBox::Save |
    155                                            QMessageBox::Discard | QMessageBox::Cancel);
    156         switch(button)
    157         {
    158             case QMessageBox::Save:{
    159                 saveAct();
    160                 if (mini_text->document()->isModified()){
    161                     return;
    162                 }
    163             }
    164             case QMessageBox::Cancel:{
    165                 return;
    166             }
    167             case QMessageBox::Discard:{
    168                 break;
    169             }
    170         }
    171     }
    172     mini_text->clear();
    173 }
    174 
    175 //打开文件
    176 void MainWindow::openAct()
    177 {
    178     QString file_name = QFileDialog::getOpenFileName(this,tr("打开文件"),QString(),
    179                           tr("文本文件(*.txt) ;; C++文件(*.h *.cpp *.hpp)"));
    180     cur_file_name = file_name;
    181     if(!file_name.isEmpty()){
    182        QFile file(file_name);
    183        if(!file.open(QIODevice::ReadOnly)){
    184           QMessageBox::critical(this,tr("错误"),tr("不能打开文件"));
    185           return;
    186        }
    187        QTextStream ins(&file);
    188        mini_text->setText(ins.readAll());
    189        file.close();
    190     }
    191 }
    192 
    193 //保存文件
    194 void MainWindow::saveAct()
    195 {
    196     if(cur_file_name.isEmpty()){
    197         QString file_name = QFileDialog::getSaveFileName(this,tr("保存文件"),QString(),
    198                                tr("文本文件(*.txt) ;; C++文件(*.h *.cpp *.hpp)"));
    199         if(!file_name.isEmpty()){
    200             QFile file(file_name);
    201             if(!file.open(QIODevice::WriteOnly)){
    202                 QMessageBox::critical(this,tr("错误"),tr("不能打开文件"));
    203                 return;
    204             }
    205             QTextStream outs(&file);
    206             outs<<mini_text->toPlainText();
    207             outs.flush();
    208             file.close();
    209         }
    210     }
    211     else{
    212         QFile file(cur_file_name);
    213         if(!file.open(QIODevice::WriteOnly)){
    214             QMessageBox::critical(this,tr("错误"),tr("不能打开文件"));
    215             return;
    216         }
    217         QTextStream outs(&file);
    218         outs<<mini_text->toPlainText();
    219         outs.flush();
    220         file.close();
    221     }
    222 }
    223 
    224 void MainWindow::anotherSaveAct()
    225 {
    226     QString file_name = QFileDialog::getSaveFileName(this,tr("保存文件"),QString(),
    227                            tr("文本文件(*.txt) ;; C++文件(*.h *.cpp *.hpp)"));
    228     if(!file_name.isEmpty()){
    229         QFile file(file_name);
    230         if(!file.open(QIODevice::WriteOnly)){
    231             QMessageBox::critical(this,tr("错误"),tr("不能打开文件"));
    232             return;
    233         }
    234         QTextStream outs(&file);
    235         outs<<mini_text->toPlainText();
    236         outs.flush();
    237         file.close();
    238     }
    239 
    240 }
    241 
    242 void MainWindow::findReplace(QString find_str, bool flg)
    243 {
    244     bool find_flag;
    245     if(flg){
    246         find_flag = mini_text->find(find_str,QTextDocument::FindCaseSensitively);
    247     }
    248     else{
    249         find_flag = mini_text->find(find_str);
    250     }
    251     if(!find_flag){
    252         QMessageBox::information(this,tr("结果"),tr("没有找到查找内容"),QMessageBox::Yes);
    253     }
    254     else{
    255         find = true;
    256     }
    257 
    258 
    259 }
    260 
    261 void MainWindow::replaceCur(QString find_str, QString replace_str)
    262 {
    263     if(find){
    264         QTextCursor text_cursor = mini_text->textCursor();
    265         text_cursor.insertText(replace_str);
    266     }
    267     else{
    268         QMessageBox::information(this,tr("结果"),tr("没有内容不能替换")+find_str,QMessageBox::Yes);
    269     }
    270     find = false;
    271 }
    272 
    273 void MainWindow::replaceAll(QString find_str, QString replace_str,bool flg)
    274 {
    275     if(!flg){
    276         bool haf = mini_text->find(find_str);
    277         if(haf){
    278             QTextCursor text_cursor = mini_text->textCursor();
    279             text_cursor.insertText(replace_str);
    280             while(mini_text->find(find_str)){
    281                 text_cursor = mini_text->textCursor();
    282                 text_cursor.insertText(replace_str);
    283             }
    284             while(mini_text->find(find_str,QTextDocument::FindBackward)){
    285                 text_cursor = mini_text->textCursor();
    286                 text_cursor.insertText(replace_str);
    287             }
    288         }
    289         else{
    290              QMessageBox::information(this,tr("结果"),tr("没有内容不能替换 ")+find_str,QMessageBox::Yes);
    291         }
    292     }
    293     else{
    294         bool haf = mini_text->find(find_str,QTextDocument::FindCaseSensitively);
    295         if(haf){
    296             QTextCursor text_cursor = mini_text->textCursor();
    297             text_cursor.insertText(replace_str);
    298             while(mini_text->find(find_str,QTextDocument::FindCaseSensitively)){
    299                 text_cursor = mini_text->textCursor();
    300                 text_cursor.insertText(replace_str);
    301             }
    302             while(mini_text->find(find_str,QTextDocument::FindCaseSensitively|QTextDocument::FindBackward)){
    303                 text_cursor = mini_text->textCursor();
    304                 text_cursor.insertText(replace_str);
    305             }
    306         }
    307         else{
    308             QMessageBox::information(this,tr("结果"),tr("没有内容不能替换")+find_str,QMessageBox::Yes);
    309         }
    310     }
    311 
    312 }
    313 
    314 void MainWindow::printAct()
    315 {
    316     QPrinter printer;
    317     QString printer_name = printer.printerName();
    318        if( printer_name.size() == 0){
    319            return;
    320        }
    321        QPrintDialog dlg(&printer, this);
    322        if (mini_text->textCursor().hasSelection()){
    323            dlg.addEnabledOption(QAbstractPrintDialog::PrintSelection);
    324        }
    325        if(dlg.exec() == QDialog::Accepted){
    326            mini_text->print(&printer);
    327        }
    328 }
    329 
    330 void MainWindow::findAct(QString str,bool ignore,bool choose)
    331 {
    332     QString text = str;
    333     bool find_flag;
    334     if(!text.isEmpty()){
    335         if(choose){
    336             if(ignore){
    337               find_flag = mini_text->find(text,QTextDocument::FindCaseSensitively);
    338             }
    339             else{
    340                 find_flag = mini_text->find(text);
    341 
    342             }
    343         }
    344         else{
    345             if(ignore){
    346                 find_flag = mini_text->find(text,QTextDocument::FindBackward|QTextDocument::FindCaseSensitively);
    347             }
    348             else{
    349                 find_flag = mini_text->find(text,QTextDocument::FindBackward);
    350 
    351             }
    352         }
    353         if(!find_flag){
    354             QMessageBox::information(this,tr("结果"),tr("没有找到查找内容"),QMessageBox::Yes);
    355         }
    356     }
    357 
    358 }
    359 
    360 void MainWindow::aboutAct()
    361 {
    362     QMessageBox message(QMessageBox::NoIcon,tr("关于"), tr("version: v1.0\n"
    363                                                           "author: karllen\n"
    364                                                           "qq: 1160113606\n"
    365                                                          "Begin Learning The Qt"));
    366     message.setIconPixmap(QPixmap(tr(":/images/me")));
    367     message.exec();
    368 
    369 }
    370 
    371 void MainWindow::showFindDialog()
    372 {
    373     find_dialog->show();
    374 }
    375 
    376 void MainWindow::showReplaceDialog()
    377 {
    378     replace_dialog->show();
    379 }
    380 
    381 void MainWindow::exitAct()
    382 {
    383     this->close();
    384 
    385 }

    查找对话框类:

     1 #ifndef FINDDIALOG_H
     2 #define FINDDIALOG_H
     3 #include <QDialog>
     4 #include <QLineEdit>
     5 #include <QLabel>
     6 #include <QPushButton>
     7 #include <QRadioButton>
     8 #include <QGridLayout>
     9 #include <QHBoxLayout>
    10 #include <QGroupBox>
    11 #include <QCheckBox>
    12 
    13 class FindDialog:public QDialog
    14 {
    15     Q_OBJECT
    16 public:
    17     FindDialog(QWidget *parent = 0);
    18     ~FindDialog();
    19 
    20 signals:
    21     void findTextDataButtonClickedSignal(QString,bool,bool);
    22 
    23 private slots:
    24     void findButtonState();
    25     void findDataButtonClickedState();
    26 
    27 private:
    28     QLineEdit *find_edit;
    29     QLabel    *find_label,*ignore_label,*next_label,*back_label;
    30     QPushButton *find_button;
    31     QRadioButton *next_radio;
    32     QRadioButton *back_radio;
    33     QCheckBox *ignore_flag;
    34 };
    35 
    36 #endif // FINDDIALOG_H
      1 #include "finddialog.h"
      2 
      3 FindDialog::FindDialog(QWidget *parent)
      4     :QDialog(parent)
      5 {
      6     setWindowTitle(tr("查找"));
      7     find_label = new QLabel(tr("查找"));
      8     ignore_label = new QLabel(tr("区分大小写"));
      9     next_label = new QLabel(tr("向后"));
     10     back_label = new QLabel(tr("向前"));
     11     find_edit = new QLineEdit;
     12     find_button = new QPushButton(tr("查找下一个"));
     13     next_radio = new QRadioButton;
     14     back_radio = new QRadioButton;
     15     ignore_flag = new QCheckBox;
     16 
     17     find_edit->setText(tr(""));
     18 
     19     QGridLayout *grid_layout = new QGridLayout(this);
     20     grid_layout->addWidget(find_label,0,0);
     21     grid_layout->addWidget(find_edit,0,1);
     22     grid_layout->addWidget(find_button,0,3);
     23 
     24     QHBoxLayout *ignore_layout = new QHBoxLayout;
     25     ignore_layout->setSpacing(10);
     26     ignore_layout->addWidget(ignore_label);
     27     ignore_layout->addWidget(ignore_flag);
     28 
     29     QHBoxLayout *radio_layout = new QHBoxLayout;
     30     radio_layout->addWidget(next_label);
     31     radio_layout->addWidget(next_radio);
     32 
     33     radio_layout->addWidget(back_label);
     34     radio_layout->addWidget(back_radio);
     35 
     36     QGroupBox *group_radio = new QGroupBox(tr("方向"),this);
     37     group_radio->setLayout(radio_layout);
     38 
     39     QHBoxLayout *do_radio = new QHBoxLayout;
     40     do_radio->addWidget(group_radio);
     41 
     42     grid_layout->addLayout(ignore_layout,1,0);
     43     grid_layout->addLayout(do_radio,1,1);
     44 
     45     this->setMaximumSize(300,100);
     46     next_radio->setChecked(true);
     47     find_button->setEnabled(false);
     48     connect(find_edit,SIGNAL(textChanged(QString)),this,SLOT(findButtonState()));
     49     connect(find_button,SIGNAL(clicked(bool)),this,SLOT(findDataButtonClickedState()));
     50 }
     51 
     52 FindDialog::~FindDialog()
     53 {
     54     if(find_edit){
     55         delete find_edit;
     56     }
     57     if(find_label){
     58         delete find_label;
     59     }
     60     if(ignore_label){
     61         delete ignore_label;
     62     }
     63     if(next_label){
     64         delete next_label;
     65     }
     66     if(back_label){
     67         delete back_label;
     68     }
     69     if(find_button){
     70         delete find_button;
     71     }
     72     if(next_radio){
     73         delete next_radio;
     74     }
     75     if(back_radio){
     76         delete back_radio;
     77     }
     78     if(ignore_flag){
     79         delete ignore_flag;
     80     }
     81 }
     82 
     83 void FindDialog::findButtonState()
     84 {
     85     if(find_edit->text().isEmpty()){
     86         find_button->setEnabled(false);
     87     }
     88     else{
     89         find_button->setEnabled(true);
     90     }
     91 
     92 }
     93 
     94 void FindDialog::findDataButtonClickedState()
     95 {
     96     if(find_edit->text().isEmpty()){
     97         return;
     98     }
     99     QString str = find_edit->text();
    100     if(next_radio->isChecked()){
    101         if(ignore_flag->isChecked()){
    102             emit findTextDataButtonClickedSignal(str,true,true);
    103         }
    104         else{
    105             emit findTextDataButtonClickedSignal(str,false,true);
    106         }
    107     }
    108     if(back_radio->isChecked()){
    109         if(ignore_flag->isChecked()){
    110             emit findTextDataButtonClickedSignal(str,true,false);
    111         }
    112         else{
    113             emit findTextDataButtonClickedSignal(str,false,false);
    114         }
    115     }
    116 }

    替换对话框类:

     1 #ifndef REPLACEDIALOG_H
     2 #define REPLACEDIALOG_H
     3 
     4 #include <QDialog>
     5 #include <QPushButton>
     6 #include <QLabel>
     7 #include <QCheckBox>
     8 #include <QLineEdit>
     9 #include <QGridLayout>
    10 #include <QVBoxLayout>
    11 
    12 class ReplaceDialog:public QDialog
    13 {
    14     Q_OBJECT
    15 public:
    16     ReplaceDialog(QWidget *parent = 0);
    17     ~ReplaceDialog();
    18 signals:
    19     void replaceAllStr(QString , QString,bool);
    20     void replaceCurOneStr(QString,QString);
    21     void findReplaceStr(QString,bool);
    22 private slots:
    23     void chooseStrSlot();
    24     void findButtonStateSlot();
    25     void replaceOneButtonStateSlot();
    26     void replaceAllButtonStateSlot();
    27 private:
    28     QLineEdit *find_str;
    29     QLineEdit *replace_str;
    30     QPushButton *find_next_button;
    31     QPushButton *replaced_one_button;
    32     QPushButton *replaced_all_button;
    33     QPushButton *cancle_button;
    34     QCheckBox *ignore_flag;
    35     QLabel  *find_label;
    36     QLabel  *replace_label;
    37 };
    38 
    39 #endif // REPLACEDIALOG_H
      1 #include "replacedialog.h"
      2 
      3 ReplaceDialog::ReplaceDialog(QWidget *parent)
      4     :QDialog(parent)
      5 {
      6     find_label          = new QLabel(tr("查找内容"));
      7     replace_label       = new QLabel(tr("替换为"));
      8     find_str            = new QLineEdit();
      9     replace_str         = new QLineEdit();
     10     find_next_button    = new QPushButton(tr("查找下一个"));
     11     replaced_one_button = new QPushButton(tr("替换"));
     12     replaced_all_button = new QPushButton(tr("全部替换"));
     13     cancle_button       = new QPushButton(tr("取消"));
     14     ignore_flag         = new QCheckBox(tr("区分大小写"));
     15 
     16     QGridLayout *grdly  = new QGridLayout(this);
     17     QVBoxLayout *vboxly = new QVBoxLayout(this);
     18 
     19     vboxly->addWidget(replaced_all_button);
     20     vboxly->addWidget(cancle_button);
     21     grdly->addWidget(find_label,0,0);
     22     grdly->addWidget(find_str,0,1);
     23     grdly->addWidget(find_next_button,0,2);
     24     grdly->addWidget(replace_label,1,0);
     25     grdly->addWidget(replace_str,1,1);
     26     grdly->addWidget(replaced_one_button,1,2);
     27     grdly->addWidget(ignore_flag,2,1);
     28     grdly->addLayout(vboxly,2,2);
     29 
     30     find_str->setText(tr(""));
     31     replace_str->setText(tr(""));
     32     find_next_button->setEnabled(false);
     33     replaced_one_button->setEnabled(false);
     34     replaced_all_button->setEnabled(false);
     35 
     36     this->setMaximumSize(300,100);
     37 
     38     connect(find_str,SIGNAL(textChanged(QString)),this,SLOT(chooseStrSlot()));
     39     connect(cancle_button,SIGNAL(clicked()),this,SLOT(close()));
     40     connect(find_next_button,SIGNAL(clicked()),this,SLOT(findButtonStateSlot()));
     41     connect(replaced_one_button,SIGNAL(clicked()),this,SLOT(replaceOneButtonStateSlot()));
     42     connect(replaced_all_button,SIGNAL(clicked()),this,SLOT(replaceAllButtonStateSlot()));
     43 }
     44 
     45 ReplaceDialog::~ReplaceDialog()
     46 {
     47     if(find_str){
     48         delete find_str;
     49     }
     50     if(replace_str){
     51         delete replace_str;
     52     }
     53     if(find_next_button){
     54         delete find_next_button;
     55     }
     56     if(replaced_one_button){
     57         delete replaced_one_button;
     58     }
     59     if(replaced_all_button){
     60         delete replaced_all_button;
     61     }
     62     if(cancle_button){
     63         delete cancle_button;
     64     }
     65     if(ignore_flag){
     66         delete ignore_flag;
     67     }
     68     if(find_label){
     69         delete find_label;
     70     }
     71     if(replace_label){
     72         delete replace_label;
     73     }
     74 }
     75 
     76 void ReplaceDialog::chooseStrSlot()
     77 {
     78     if(!find_str->text().isEmpty()){
     79         find_next_button->setEnabled(true);
     80         replaced_one_button->setEnabled(true);
     81         replaced_all_button->setEnabled(true);
     82     }
     83     else{
     84         find_next_button->setEnabled(false);
     85         replaced_one_button->setEnabled(false);
     86         replaced_all_button->setEnabled(false);
     87     }
     88 }
     89 
     90 void ReplaceDialog::findButtonStateSlot()
     91 {
     92     if(ignore_flag->isChecked()){
     93         emit findReplaceStr(find_str->text(),true);
     94     }
     95     else{
     96         emit findReplaceStr(find_str->text(),false);
     97     }
     98 }
     99 
    100 void ReplaceDialog::replaceOneButtonStateSlot()
    101 {
    102     emit replaceCurOneStr(find_str->text(),replace_str->text());
    103 
    104 }
    105 
    106 void ReplaceDialog::replaceAllButtonStateSlot()
    107 {
    108     if(ignore_flag->isChecked()){
    109         emit replaceAllStr(find_str->text() , replace_str->text(),true);
    110     }
    111     else{
    112         emit replaceAllStr(find_str->text() , replace_str->text(),false);
    113     }
    114 
    115 
    116 }

    main函数:

     1 #include "mainwindow.h"
     2 #include "finddialog.h"
     3 #include <QApplication>
     4 
     5 int main(int argc, char *argv[])
     6 {
     7     QApplication a(argc, argv);
     8 
     9     MainWindow w;
    10     w.show();
    11     return a.exec();
    12 }

     

    注:代码下载地址 http://download.csdn.net/detail/u010085340/9289609                                       

    转载于:https://www.cnblogs.com/Forever-Kenlen-Ja/p/4985133.html

    展开全文
  • 龙腾记事本是一款出于人性化与多功能考虑的高级文本编辑工具,具有低内存、小体积、绿色化、高速化的特点。既可以用于编辑文本文件(方便、实用),又可以用作录制软件教程(专业、美观),还适合用来欣赏小说等文本...
  • 特点简洁,安全,而且高效,代码简练,而且兼容Firefox和IE. 后台管理可置顶留言,删除留言,通过对程序文件进行参数设置可以屏蔽IP,限制留言间隔时间,是否显示等功能. 数据库名称作了防下载保护.适合用于网络...
  • 记事本XP是一款非常轻巧的文本文件编辑器,和Windows记事本相比,它具有如下特点:1、体积小巧,主文件仅有23KB。 2、可快速打开文件,同一目录内文件可通过F7和F8两个键快速打开查看,并可显示当前目录内文本文件...
  • 简单的说就是一个比Windows自带的记事本更强大的记事本,他有语法高亮等特点,帮助我们手写代码,软件很小安装很简单。 你用的时候可以直接新建在电脑上新建记事本,然后选择用notep++打开写代码保存就行了, 当然你...

    怎么用记事本写出你的第一行JAVA代码并运行起来呢,一起简单学习一下

    在开始前可以介绍一个简单的小东西
    NotePad++ 什么是notepad++
    简单的说就是一个比Windows自带的记事本更强大的记事本,他有语法高亮等特点,帮助我们手写代码,软件很小安装很简单。
    你用的时候可以直接新建在电脑上新建记事本,然后选择用notep++打开写代码保存就行了
    当然你技术够也可以直接在记事本里面写,但是要确保语法那些都正确,这个软件就是帮助我们的而已

    进入正题,具体怎么操作呢

    提示,电脑上必须要先安装好JDK,没有可以看网上教程,也可以看我前面博客里的JDK安装方法jdk下载安装

    1. 在电脑桌面上新建一个文件夹,随便取个名字(为什么不直接新建记事本,是为了后面运行时快速进入cmd找到文件地址直接操作),然后在里面建一个记事本文件,命名为 Hello.txt 然后吧后缀名txt改为.java 就是Hello.java (文件名不大写运行时会报错)

    2. 你没有安装notepad++ 可以直接双击打开这个文件写代码,如果有可以右键选择用notepad++打开写,最后保存

    3. 代码:

      public class Hello{
      	public static void main(String[] args){
             System.out.print("Hello,world!"): //输出Hello,world!
          }
      }
      
    4. 代码写好了就开始准备运行了,在文件夹上面路径那前面加上cmd 然后回车,

      例:cmd C:\Users\asus\Desktop\code
      在这里插入图片描述

    5. 在弹出的cmd里后面写上 javac Hello.java 例子 C:\Users\asus\Desktop\code>javac Hello.java
      在这里插入图片描述

      然后回车他会编译,然后在你文件里里生成一个.class文件
      在这里插入图片描述

    6. 然后继续在cmd里输入 java Hello 回车 就运行成功了!

      在这里插入图片描述
      在这里插入图片描述

    7. 至此,你也就会了简单的用记事本运行Java程序了!

    展开全文
  • ,系统的开发语言是 Java ,开发环境是 Eclipse + java SDK ,数据库是 Windows SQL Server 2000 。 本系统具有的特点是: 1、用户需要注册;2、在使用时服务器需保持运行状态 。优点是: 1、解决了本地存储信息的...
  • Windows系统具有风格一致的华丽图形用户界面、丰富的API函数、设备无关性、多任务等特点而广泛流行。 Win32汇编支持32位Windows API函数的调用,拥有很多高级语言的语法和运算符,编译后的程序执行效率高,占微量...
  • Notepad2 是一个外观类似系统记事本的文本编辑工具,但比记事本有了很大的增强。 特点: --自定义语法高亮, 支持 HTML, XML, CSS, JavaScript, VBScript, ASP, PHP, CSS, Perl/CGI, C/C++, C#, Java, VB, Pascal, ...
  • 转自:... Notepad++是开源的文本程序,是用C++编写的。目前只能在Windows上运行。NotePad++是小巧的编辑器,最新版本5.7.1的安装文件仅为3.88M....这个软件的特点,这里简要介绍一下:首先,NoteP...
  • Windows1.0

    热门讨论 2008-04-12 22:33:56
    Windows 1.0的另外一个显著特点就是允许用户同时执行多个程序,并在各个程序之间进行切换,这对于DOS来说是不可想象的。   Windows 1.0 可以显示256种颜色,窗口可以任意缩放,当窗口最小化的时候桌面上会有...
  • windows用户态调试

    2021-05-09 11:01:52
    打开windows记事本小程序,windbg attach到这个进程,发现notepad不能动了,这是用户态调试的特点: 今天调试模式,应用程序所有线程都处于freeze状态。 观察一下线程状态: 会看到有6个线程。 0:006> ~* 0 Id...
  • Windows下也有许多也许小众但是贼有用的软件工具,他们能够让我们更加高效的使用windows...Notepad++是一个免费的源代码编辑器和记事本替换,支持多种语言。在MS Windows环境中运行,其使用受GPL许可证管理。 特点 1...
  • JAVA中十四种常见开发工具及其特点

    千次阅读 2020-04-28 20:22:37
    1、JDK (Java Development Kit)Java开发工具集 SUN的Java不仅提了一个丰富的语言和运行环境,... JDK简单易学,可以通过任何文本编辑器(如:Windows 记事本、UltrEdit、Editplus、FrontPage以及dreamweaver...
  • 记事本实用程序的基本功能是-->文字处理 D 盘根目录中文件夹DATA里的可执行文件TESTD:/DATA/TEST.EXE Windows 资源管理器窗口中可以通过单击工具栏中的组织查看窗格 Windows 菜单操作中如果对某个菜单项的选择没有...
  • 事实上,我们每天都会接触到不同的Windows窗体,操作系统中我的电脑、记事本、听歌的软件窗口等都有相似的特点,可以改变大小,可以在窗体上添加按钮和菜单。Windows应用程序一般都由一个或多个窗体组成,这些窗体可...
  • Notepad++安装包.zip

    2020-06-30 23:27:14
    Windows 记事本一个最好的替换产品,优于Windows记事本的一个文本编辑器,完全免费且开源,对于不同的编程语言可以实现语法高亮,代码折叠以及宏,起可定制性非常强。主要特点包括: a. 自动完成 b. 语法高亮 c. ...
  • 现在有人可能会说记事本++可以完成这项工作,但事实是记事本++只是一个具有可扩展插件的高级源代码编辑器。 特点:创建和打开一个项目(就像在Visual Studio中那样,但要容易得多)。项目格式基于XML,类似于Visual...
  • Liunx的特点及应用领域: ① 精简的内核,性能高、稳定,多任务。 ② 适用于不同的CPU,支持多种体系结构,如X86、ARM、MIPS、ALPHA、SPARC ③ 能够提供完善的嵌入式GUI以及嵌入式X-Windows。 ④ 提供嵌入式...
  • 远程桌面连接的确很方便,但是在Windows XP中只支持单一用户的连接,当第二个用户连接时,第一个用户就被迫断开并回到用户登录界面了,这可和多任务的操作系统理念不符啊,或许微软是为了突出Server系统的特点吧!...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 156
精华内容 62
关键字:

windows记事本特点