「Qtのコントロール - ラインエディット」の版間の差分

📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

 
(同じ利用者による、間の5版が非表示)
1行目: 1行目:
== 概要 ==
== 概要 ==
Qtのコントロールであるラインエディットについて記載する。<br>
Qtのコントロールであるラインエディットについて記載する。<br>
<br><br>
== テキストの入力 ==
<syntaxhighlight lang="c++">
QString str = "";
// ...略
if(!str.isEmpty())
{
    lineEdit->setText(str);
}
</syntaxhighlight>
<br><br>
== テキストの取得 ==
<syntaxhighlight lang="c++">
QString str = lineEdit->text();
</syntaxhighlight>
<br><br>
== パスワード入力モードにする ==
Qt Designerのプロパティ[echoMode]を[Password]に設定する。<br>
または、ソースコードで以下を記述する。<br>
<syntaxhighlight lang="c++">
lineEdit->setEchoMode(QLineEdit::Password)
</syntaxhighlight>
<br><br>
<br><br>


118行目: 145行目:
* [Ctrl] + [V]キーで貼り付ける。
* [Ctrl] + [V]キーで貼り付ける。
<br>
<br>
# コンテキストメニューの無効化
上記の方法を無効化する方法を以下に示す。<br>
#: Qt Designerにて、<code>contextMenuPolicy</code>プロパティを<code>NoContextMenu</code>にする。
* コンテキストメニューの無効化
#: また、ソースコードにて以下を記述する。
*: Qt Designerにて、<code>contextMenuPolicy</code>プロパティの値をを<code>NoContextMenu</code>にする。
#: <code>setContextMenuPolicy(Qt::NoContextMenu);</code>
*: また、ソースコードにて以下を記述する。
#: 無効にしない場合、<code>NoContextMenu</code>ではなく<code>CustomContextMenu</code>にして、独自のコンテキストメニューを作成してもよい。
*: <code>setContextMenuPolicy(Qt::NoContextMenu);</code>
#: <br>
*: 無効にしない場合、値を<code>NoContextMenu</code>ではなく<code>CustomContextMenu</code>にして、独自のコンテキストメニューを作成してもよい。
# ドラッグ&ドロップの無効化
*: <br>
#: Qt Designerにて、<code>acceptDrops</code>プロパティのチェックを外す。
* ドラッグ&ドロップの無効化
#: また、ソースコードにて以下を記述する。
*: Qt Designerにて、<code>acceptDrops</code>プロパティのチェックボックスからチェックを外す。
#: <code>setAcceptDrops(false);</code>
*: また、ソースコードにて以下を記述する。
#: <br>
*: <code>setAcceptDrops(false);</code>
# [Ctrl] + [V]キーの無効化
*: <br>
#: <code>QLineEdit::keyPressEvent</code>メソッドをオーバーライドする。
* [Ctrl] + [V]キーの無効化
*: <code>QLineEdit::keyPressEvent</code>メソッドをオーバーライドする。
<br>
<br>
以下の例では、ラインエディットをQLineEditクラスを継承した派生クラスQLineEditExクラスに昇格している。
以下の例では、ラインエディットを<code>QLineEdit</code>クラスを継承した派生クラス<code>QLineEditEx</code>クラスに昇格している。<br>
また、ラインエディットのcontextMenuPolicyプロパティをacceptDropsに設定している。
また、ラインエディットの<code>contextMenuPolicy</code>プロパティの値を<code>acceptDrops</code>に設定している。<br>
 
<br>
押下されたキーの組み合わせが貼り付けに該当する場合、該当イベントを無視するようにしている。
押下されたキーの組み合わせが貼り付けに該当する場合、該当イベントを無視するようにしている。<br>
  <syntaxhighlight lang="c++">
  <syntaxhighlight lang="c++">
  // QLineEditEx.cpp
  // QLineEditEx.cpp
408行目: 436行目:
  </syntaxhighlight>
  </syntaxhighlight>
<br><br>
<br><br>
{{#seo:
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux
|image=/resources/assets/MochiuLogo_Single_Blue.png
}}


__FORCETOC__
__FORCETOC__
[[カテゴリ:Qt]]
[[カテゴリ:Qt]]