Мне нужно создать строку, содержащую альтернативные коды, в частности Alt-16 (символ стрелки). У меня есть строка текста (она же строка). Я добавляю возврат каретки, затем хочу символ СТРЕЛКИ и новую строку текста. Затем эта строка будет передана в PPT. Если я вручную войду в PPT, в текстовое поле, я могу нажать Alt+16 и получить символ стрелки. Это то, что я программно хочу сделать. Найдены альтернативные символы здесь.
Вот что я пытаюсь сделать, но это дает мне совершенно другой символ.
line := line + #13 + Chr(VK_MENU) + #16 + NewLine;
Как создать строку с ALT-кодами как часть строки?
Код стрелки представлен Alt+16. Я буду помещать строку в текстовое поле в PPT. Мне нужно, чтобы строка содержала символ стрелки, он же Alt+16. По сути, у меня есть LINE, а затем я говорю PPT.TextBox.text := Line. Имеет ли это смысл? Часть ppt работает. Мне просто нужно вставить Alt+16 в середину строки.
OK. Я думаю, вы настроены на реализацию своего решения. Удачи.
Я открыт для другого подхода, просто я не знаю, каким он будет. Я устанавливаю свойство текста (элемента PowerPoint), и мне нужен символ стрелки как часть текста... Если есть другой способ, я рад попробовать его.
Я думаю, что Дэвид пытается сказать, что Alt+Nr — это просто способ ввода символов, но сам символ не называется Alt-символом, и есть другие способы их ввода. Вы можете попробовать найти своего персонажа на карте персонажей (программа для Windows) или на веб-сайте, таком как https://unicode-table.com/en/
. В зависимости от вашей версии Delphi вы можете просто вставить символ в исходный код или использовать Chr
функция для преобразования числового значения в символ.
Тогда спросите об этом и не настаивайте на альтернативных кодах. Это очень распространенная проблема, известная как вопрос XY. Гуглите это.
Chr(VK_MENU)
Боюсь, это не то, что вы думаете. VK_MENU
— это код ключа, а не буква, которую можно преобразовать с помощью Chr
. Клавиша Alt
является клавишей-модификатором, что означает, что прямое преобразование в символ не даст вам ожидаемых результатов.
Попробуйте Декодировать/кодировать текст Unicode или #$25BA
Не то чтобы эти символы не назывались альт-кодами или альт-символами. Alt-коды — это просто способ ввести какой-то специальный символ, но их нельзя использовать как таковые в строке.
Вы можете просто ввести этот символ, используя альтернативный код, или скопировать его с веб-сайта альтернативных кодов. Вы можете использовать символ как есть в строке. Код ниже будет работать нормально:
// Show it
ShowMessage('►');
// Or use it in your string:
line := line + #13 + '►' + NewLine;
Это то, что мне было нужно. Я пытался слишком все усложнить. Спасибо. Это сработало отлично.
Вы хотите использовать альтернативные коды для ввода или хотите вставить символ стрелки в строку Delphi? Потому что способ сделать последнее не предполагает выполнения первого.