Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: CL | DM;

Вниз

Edit - выделение   Найти похожие ветки 

 
Earth   (2005-06-13 19:46) [0]

Как запретить выделение текста в Edit?


 
Anatoly Podgoretsky ©   (2005-06-13 19:50) [1]

Оно мешает, мне нет и даже помогает подумать


 
Earth   (2005-06-13 20:07) [2]

У меня программа, для защиты компа, и нужен код для запрета выделение!


 
Ученик   (2005-06-13 20:10) [3]

>Earth   (13.06.05 20:07) [2]
Этот текст не надо будет переслать Вам, например, по электронной почте ?


 
-=XP=- ©   (2005-06-13 20:27) [4]

У меня программа, для защиты компа, и нужен код для запрета выделение!

Защиты от пользователя? :)))

Используйте TLabel.


 
NightStranger ©   (2005-06-13 22:21) [5]

Memo c ReadOnly=true;
Edit c Enabled=false;
Да и действительно... Лейбл
;)


 
Просто Джо ©   (2005-06-13 22:22) [6]

Раз уж тут варианты сыплются как из ведра, кину и я свой: Canvas.TextOut в TImage :^)


 
Earth   (2005-06-14 11:30) [7]

Ситуация такая: Пользователь вводит пароль, который регистрируется в окне статистики, а если пользователь выделяет пароль а затем печатает новый, то в окне статистики ничего о выделении не отображается, пояэтому я считаю, что выделение нужно запретить! А вот как это сделать, не знаю...
Если кто знает помогите


 
-=XP=- ©   (2005-06-14 11:52) [8]

Вы это о чем?


 
ЮЮ ©   (2005-06-14 11:57) [9]

>Пользователь вводит пароль, который регистрируется в окне статистики

После каждого нажатия клавиши?
Тогда уж регистрирацию в окне статистики делай в обработчике OnChange, т.е. при каждом изменении содержимого Edit-a :)


 
Earth   (2005-06-14 16:09) [10]

OnChange - нельзя т.к. записывается имя нажатого симфола!
Кто ни будь знает как программно решить мою задачу?


 
-=XP=- ©   (2005-06-14 16:13) [11]

OnChange - нельзя т.к. записывается имя нажатого симфола!

Как насчет Ctrl+V, Shift+Ins?


 
Earth   (2005-06-14 20:03) [12]

Это всё не то, да и не по теме!


 
-=XP=- ©   (2005-06-14 20:14) [13]

Вот же неугомонный изобретатель велосипеда!

По таймеру, или в оконной процедуре (тут придется повозиться):

if (<Edit.>SelLength > 0) then <Edit.>SelLength := 0;


 
Earth   (2005-06-14 22:13) [14]

Хорошо, но я это обошёл, если выделять чень быстро, то таймер не помогает!


 
-=XP=- ©   (2005-06-14 22:19) [15]

unit uUnselEdit;

interface

uses
 Windows, Messages, StdCtrls, Classes, Controls;

type
 TNonSelEdit = class(TEdit)
 private
   OldWndProc: TWndMethod;
   procedure AddWndProc(var Message: TMessage);
 public
   constructor Create(AOwner: TComponent); override;
   destructor Destroy; override;
 end;

procedure Register;

implementation

procedure Register;
begin
 RegisterComponents("Standard", [TNonSelEdit]);
end;

{ TNonSelEdit }

procedure TNonSelEdit.AddWndProc(var Message: TMessage);
var
SS, SE: integer;
begin
 if (Message.Msg <> EM_SETSEL) and (Message.Msg <> EM_GETSEL) and (SelLength > 0) then
   SelLength := 0;
 OldWndProc(Message);
end;

constructor TNonSelEdit.Create(AOwner: TComponent);
begin
 inherited Create(AOwner);
 OldWndProc := WindowProc;
 WindowProc := AddWndProc;
end;

destructor TNonSelEdit.Destroy;
begin
 WindowProc := OldWndProc; //Х.З.
 inherited;
end;

end.


P.S. Когда Вас будут бить пользователи - не кричите "Помогите!". А то прибегу - и помогу. Пользователям.


 
Юрий Зотов ©   (2005-06-15 09:27) [16]

> -=XP=- ©   (14.06.05 22:19) [15]

А почему просто не перекрыть WndProc?


 
-=XP=- ©   (2005-06-15 09:53) [17]

А почему просто не перекрыть WndProc?

Как один из вариантов.
Причем, первый из вариантов.

P.S. С рабочего места, да в такое время...



Страницы: 1 вся ветка

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.044 c
14-1118328590
PVOzerski
2005-06-09 18:49
2005.07.11
Объявлено о смерти проекта Virtual Pascal...


6-1112839768
inew
2005-04-07 06:09
2005.07.11
Странная работа Indy SmtpServer.


8-1111102536
мыш
2005-03-18 02:35
2005.07.11
free transform - нужен алгоритм


1-1118389417
ruslan_as
2005-06-10 11:43
2005.07.11
Как сделать скриншот из всего, что находиться в ScrollBox1


14-1118090886
ArMellon
2005-06-07 00:48
2005.07.11
Как сделать чтобы не могли тянуть с моего eMule





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский