Bonjour,
Je réalise une interface graphique qui contiens plusieurs EditTexts.

Je voudrai pouvoir saisir que des numéro, e.g: 0, 1, 2, 5.4, 2.45 ... etc

Voici le code réaliser:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
inputs(1)=uicontrol('style','edit',...
                          'units','normalized',...
                          'position',[0.35 0.90 0.3 0.07],...
                          'KeyPressFcn',@OnlyNumbers,...
                          'string','');
function OnlyNumbers(hObject,eventdata,handles)
global inputs
 
variable_name=get(inputs(1),'String');
 
variable_name(ismember(variable_name, '-+eEgG')) = ' ';
 
check_val = sprintf('%g', sscanf(variable_name, '%g', 1));
set(inputs(1), 'String', check_val);
 
if ~all(ismember(variable_name, '-1234567890.'))
 
  msgbox('Please use only the following characters: .-1234567890','Warning','warn')
 
 set(inputs(1),'String','');
 
end
end
ce code me laisse saisir d'autre caractère, alors que moi je veux ne pas pouvoir le faire, aussi pour avoir la boite de dialogue erreur ça vien sauf si je clique 2fois sur entrer.