как програмно выделить текст в TextBox с конца в начало

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
ssss
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 23.05.2006 (Вт) 20:00

как програмно выделить текст в TextBox с конца в начало

Сообщение ssss » 23.05.2006 (Вт) 20:05

вся фишка в том, что если текст длиннее контрола, при полном выделении (SelStart = 0; SetLen = Len(Text)) - на экране будет конец текста, а нужно выделить именно с конца в нячало - чтоб на экране было начало текста...

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 23.05.2006 (Вт) 20:47

Код: Выделить всё
Call SendMessage(txtText.hWnd, EM_SETSEL, 0, ByVal Len(txtText.Text))
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 24.05.2006 (Ср) 1:39

Что автор вопроса думает по поводу http://bbs.vbstreets.ru/viewtopic.php?t=23315 ?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

ssss
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 23.05.2006 (Вт) 20:00

Сообщение ssss » 24.05.2006 (Ср) 12:12

GSerg писал(а):Что автор вопроса думает по поводу http://bbs.vbstreets.ru/viewtopic.php?t=23315 ?


а то - что в закрытую тему никто не лазит...

а тема, что я открыл - на самом деле не закрыта: курсор в результате выделения ДОЛЖЕН находиться в начале выделения, а не в конце, как описанно в ранее закрытых темах!!!

ssss
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 23.05.2006 (Вт) 20:00

Сообщение ssss » 24.05.2006 (Ср) 12:15

BV писал(а):
Код: Выделить всё
Call SendMessage(txtText.hWnd, EM_SETSEL, 0, ByVal Len(txtText.Text))


... и где будет нах-ся курсор???

и чем ваш код отличается от :
BV писал(а):txtText.SelStart = 0
txtText.SelLen = Len(txtText.Text)

?

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 24.05.2006 (Ср) 12:19

курсор в результате выделения ДОЛЖЕН находиться в начале выделения, а не в конце,


а кто тебе такое сказал :?:
как раз все наоборот :!:

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 24.05.2006 (Ср) 12:20

Видимо, автор то ли не прочитал http://bbs.vbstreets.ru/viewtopic.php?t=23315, то ли не понял... Ну, для начала, закрою, мож поможет.
Справка по EM_SETSEL - msdn.microsoft.com/library
А http://bbs.vbstreets.ru/viewtopic.php?t=23315 автору вопроса рекомендуется всё же чуть внимательнее прочитать.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Google-бот и гости: 143

    TopList